<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>database &#8211; Selman Tunc</title>
	<atom:link href="https://selmantunc.com.tr/category/database/feed/" rel="self" type="application/rss+xml" />
	<link>https://selmantunc.com.tr</link>
	<description></description>
	<lastBuildDate>Fri, 27 Feb 2026 10:35:32 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://selmantunc.com.tr/wp-content/uploads/2023/07/cropped-tumblr_inline_oglumuMbgO1tyldvk_540-150x150-1-32x32.jpg</url>
	<title>database &#8211; Selman Tunc</title>
	<link>https://selmantunc.com.tr</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>MySQL&#8217;s GROUP BY</title>
		<link>https://selmantunc.com.tr/database/mysqls-group-by/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 27 Feb 2026 10:35:32 +0000</pubDate>
				<category><![CDATA[database]]></category>
		<guid isPermaLink="false">https://selmantunc.com.tr/?p=3518</guid>

					<description><![CDATA[MySQL&#8217;s GROUP BY clause groups rows with identical values in specified columns into summary rows, typically used with aggregate functions like COUNT, SUM, AVG, MAX, or MIN. datacamp Basic Syntax&#8230;]]></description>
										<content:encoded><![CDATA[<p>MySQL&#8217;s GROUP BY clause groups rows with identical values in specified columns into summary rows, typically used with aggregate functions like COUNT, SUM, AVG, MAX, or MIN. <a href="https://www.datacamp.com/doc/mysql/mysql-group-by">datacamp</a></p>
<h2>Basic Syntax</h2>
<p>The GROUP BY follows SELECT, FROM, and WHERE clauses. Only grouped columns or aggregates appear in SELECT to avoid errors (unless ONLY_FULL_GROUP_BY is disabled). <a href="https://www.mysqltutorial.org/mysql-basics/mysql-group-by/">mysqltutorial</a></p>
<pre><code>SELECT department, COUNT(*) AS employee_count
FROM employees
GROUP BY department;</code></pre>
<p>This counts employees per department. <a href="https://www.geeksforgeeks.org/mysql/mysql-group-by-clause/">geeksforgeeks</a></p>
<h2>Multiple Columns</h2>
<p>Group by several columns for finer granularity, like department and job_title. <a href="https://www.datacamp.com/doc/mysql/mysql-group-by">datacamp</a></p>
<pre><code>SELECT department, job_title, AVG(salary) AS avg_salary
FROM employees
GROUP BY department, job_title;</code></pre>
<h2>HAVING Clause</h2>
<p>Filter groups post-aggregation (WHERE filters rows pre-grouping). <a href="https://blog.devart.com/mysql-group-by-tutorial.html">blog.devart</a></p>
<pre><code>SELECT department, AVG(salary) AS avg_salary
FROM employees
GROUP BY department
HAVING AVG(salary) &gt; 50000;</code></pre>
<p>Shows departments with average salary over 50k. <a href="https://www.tutorialspoint.com/mysql/mysql-group-by-clause.htm">tutorialspoint</a></p>
<h2>Common Tips</h2>
<ul>
<li>ORDER BY after GROUP BY sorts results. <a href="https://www.w3schools.com/mysql/mysql_groupby.asp">w3schools</a></li>
<li>WITH ROLLUP adds subtotals. <a href="https://openlamptech.substack.com/p/multi-level-aggregation-using-mysql">openlamptech.substack</a></li>
<li>Use for reports like sales by region. <a href="https://www.mysqltutorial.org/mysql-basics/mysql-group-by/">mysqltutorial</a></li>
</ul>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>How to avoid creating duplicate records in MySQL and delete existing duplicates.</title>
		<link>https://selmantunc.com.tr/database/how-to-avoid-creating-duplicate-records-in-mysql-and-delete-existing-duplicates/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 27 Feb 2026 10:34:56 +0000</pubDate>
				<category><![CDATA[database]]></category>
		<guid isPermaLink="false">https://selmantunc.com.tr/?p=3514</guid>

					<description><![CDATA[To prevent duplicates in MySQL tables, use constraints and special INSERT syntax. These methods ensure data integrity at the database level. tutorialspoint Unique Constraints Define UNIQUE or PRIMARY KEY on&#8230;]]></description>
										<content:encoded><![CDATA[<p>To prevent duplicates in MySQL tables, use constraints and special INSERT syntax. These methods ensure data integrity at the database level. <a href="https://www.tutorialspoint.com/mysql/mysql-handling-duplicates.htm">tutorialspoint</a></p>
<h2>Unique Constraints</h2>
<p>Define UNIQUE or PRIMARY KEY on columns (or combinations) during table creation or alteration. This blocks inserts/updates that would create duplicates. <a href="https://stackoverflow.com/questions/2219786/best-way-to-avoid-duplicate-entry-into-mysql-database">stackoverflow</a></p>
<p>Example:</p>
<pre><code>CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  email VARCHAR(255) UNIQUE,
  name VARCHAR(100)
);

-- Or add later:
ALTER TABLE users ADD UNIQUE KEY unique_email (email);</code></pre>
<p>Attempting <code>INSERT INTO users (email, name) VALUES ('test@example.com', 'Test');</code> twice fails with a duplicate key error. <a href="https://stackoverflow.com/questions/7405619/unique-constraint-how-to-avoid-duplicates">stackoverflow</a></p>
<h2>INSERT IGNORE</h2>
<p>Ignores duplicate rows silently without error. Requires a UNIQUE/PRIMARY KEY. <a href="https://www.tencentcloud.com/techpedia/133270">tencentcloud</a></p>
<p>Example:</p>
<pre><code>INSERT IGNORE INTO users (email, name) VALUES ('test@example.com', 'Test');</code></pre>
<p>First insert succeeds; second skips the duplicate. <a href="https://stackoverflow.com/questions/2219786/best-way-to-avoid-duplicate-entry-into-mysql-database">stackoverflow</a></p>
<h2>ON DUPLICATE KEY UPDATE</h2>
<p>Upserts: inserts if new, updates if duplicate. Requires UNIQUE/PRIMARY KEY. <a href="https://stackoverflow.com/questions/3311903/remove-duplicate-rows-in-mysql">stackoverflow</a></p>
<p>Example:</p>
<pre><code>INSERT INTO users (email, name) VALUES ('test@example.com', 'Updated Name')
ON DUPLICATE KEY UPDATE name = VALUES(name);</code></pre>
<p>Updates the existing row&#8217;s name on conflict. <a href="https://oneuptime.com/blog/post/2026-01-24-mysql-duplicate-entry-primary-key/view">oneuptime</a></p>
<h2>Application Tips</h2>
<ul>
<li>Always combine with UNIQUE indexes for enforcement. <a href="https://www.tutorialspoint.com/mysql/mysql-handling-duplicates.htm">tutorialspoint</a></li>
<li>For bulk inserts, these scale better than app-level checks. <a href="https://www.reddit.com/r/mysql/comments/yl1ct5/will_using_a_unique_index_on_a_column_on_an/">reddit</a></li>
<li>Test in transactions: <code>START TRANSACTION; ... COMMIT;</code>. <a href="https://stackoverflow.com/questions/2219786/best-way-to-avoid-duplicate-entry-into-mysql-database">stackoverflow</a></li>
</ul>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>mysql group by</title>
		<link>https://selmantunc.com.tr/database/mysql-group-by/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 27 Feb 2026 10:34:39 +0000</pubDate>
				<category><![CDATA[database]]></category>
		<guid isPermaLink="false">https://selmantunc.com.tr/?p=3515</guid>

					<description><![CDATA[Bu, aynı değerlere sahip satırları gruplara ayırıp özet sorgular yapmanı sağlayan temel bir özelliktir. tasarimkodlama GROUP BY ne işe yarar? Aynı kolonda tekrar eden değerleri tek bir grup olarak toplar.&#8230;]]></description>
										<content:encoded><![CDATA[<p>Bu, aynı değerlere sahip satırları <strong>gruplara ayırıp özet sorgular</strong> yapmanı sağlayan temel bir özelliktir. <a href="https://www.tasarimkodlama.com/veritabani/mysql/mysql-group-by-kullanimi/">tasarimkodlama</a></p>
<hr />
<h3><code>GROUP BY</code> ne işe yarar?</h3>
<ul>
<li>Aynı kolonda tekrar eden değerleri <strong>tek bir grup</strong> olarak toplar.  </li>
<li>Her grup için <strong>bir satır</strong> döner, yani sonuç kümesini azaltır. <a href="https://www.tutorialspoint.com/mysql/mysql-group-by-clause.htm">tutorialspoint</a></li>
</ul>
<p>Örnek kullanım:</p>
<pre><code class="lang-sql language-sql sql">SELECT ulke, COUNT(*) AS musteri_sayisi
FROM musteriler
GROUP BY ulke;</code></pre>
<p>Bu sorgu, her ülkeyi bir grup olarak alır ve o ülkede kaç müşteri olduğunu gösterir. <a href="https://www.datacamp.com/doc/mysql/mysql-group-by">datacamp</a></p>
<hr />
<h3><code>GROUP BY</code> özellikleri</h3>
<ul>
<li>Sadece <code>GROUP BY</code> yazarak da satırları <strong>benzersiz değerlere göre gruplayabilir</strong>sin (yaklaşık <code>DISTINCT</code> gibi çalışır). <a href="https://www.tasarimkodlama.com/veritabani/mysql/mysql-group-by-kullanimi/">tasarimkodlama</a></li>
<li>Genellikle <code>COUNT</code>, <code>SUM</code>, <code>AVG</code>, <code>MIN</code>, <code>MAX</code> gibi <strong>aggregate (toplama) fonksiyonlarla</strong> birlikte kullanılır. <a href="https://www.geeksforgeeks.org/mysql/mysql-group-by-clause/">geeksforgeeks</a></li>
<li><code>HAVING</code> ile <strong>gruplanmış sonuçları</strong> filtreleyebilirsin (örneğin: sadece 5’ten fazla müşteri olan ülkeleri göster). <a href="https://www.datacamp.com/doc/mysql/mysql-group-by">datacamp</a></li>
</ul>
<hr />
<h3>Örnek tablo + sorgu</h3>
<p>Varsayım:  </p>
<pre><code class="lang-sql language-sql sql">musteriler
+--------+--------+
| ulke   | satis  |
+--------+--------+
| TR     | 100    |
| TR     | 200    |
| US     | 150    |
+--------+--------+</code></pre>
<pre><code class="lang-sql language-sql sql">SELECT ulke, SUM(satis) AS toplam_satis
FROM musteriler
GROUP BY ulke;</code></pre>
<p>Sonuç:</p>
<ul>
<li><code>TR</code> → <code>300</code>  </li>
<li><code>US</code> → <code>150</code>  </li>
</ul>
<p>Yani ülkelere göre satışı toplamış oldu. <a href="https://www.w3schools.com/mysql/mysql_groupby.asp">w3schools</a></p>
<hr />
<p>Eğer senin bir tablon varsa, oradaki kolon isimlerini yaz, <code>GROUP BY</code>’yi tam senin verine göre örneklerle göstereyim.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MySQL’de tekrar eden kayıtları (duplicate) oluşturmamak ve var olan tekrarları silmek</title>
		<link>https://selmantunc.com.tr/database/mysqlde-tekrar-eden-kayitlari-duplicate-olusturmamak-ve-var-olan-tekrarlari-silmek/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 27 Feb 2026 10:33:25 +0000</pubDate>
				<category><![CDATA[database]]></category>
		<guid isPermaLink="false">https://selmantunc.com.tr/?p=3512</guid>

					<description><![CDATA[MySQL’de GROUP dediğin muhtemelen GROUP BY özelliğidir. Bu, aynı değerlere sahip satırları gruplara ayırıp özet sorgular yapmanı sağlayan temel bir özelliktir. tasarimkodlama GROUP BY ne işe yarar? Aynı kolonda tekrar&#8230;]]></description>
										<content:encoded><![CDATA[<p>MySQL’de <code>GROUP</code> dediğin muhtemelen <strong><code>GROUP BY</code></strong> özelliğidir. Bu, aynı değerlere sahip satırları <strong>gruplara ayırıp özet sorgular</strong> yapmanı sağlayan temel bir özelliktir. <a href="https://www.tasarimkodlama.com/veritabani/mysql/mysql-group-by-kullanimi/">tasarimkodlama</a></p>
<hr />
<h3><code>GROUP BY</code> ne işe yarar?</h3>
<ul>
<li>Aynı kolonda tekrar eden değerleri <strong>tek bir grup</strong> olarak toplar.  </li>
<li>Her grup için <strong>bir satır</strong> döner, yani sonuç kümesini azaltır. <a href="https://www.tutorialspoint.com/mysql/mysql-group-by-clause.htm">tutorialspoint</a></li>
</ul>
<p>Örnek kullanım:</p>
<pre><code class="lang-sql language-sql sql">SELECT ulke, COUNT(*) AS musteri_sayisi
FROM musteriler
GROUP BY ulke;</code></pre>
<p>Bu sorgu, her ülkeyi bir grup olarak alır ve o ülkede kaç müşteri olduğunu gösterir. <a href="https://www.datacamp.com/doc/mysql/mysql-group-by">datacamp</a></p>
<hr />
<h3><code>GROUP BY</code> özellikleri</h3>
<ul>
<li>Sadece <code>GROUP BY</code> yazarak da satırları <strong>benzersiz değerlere göre gruplayabilir</strong>sin (yaklaşık <code>DISTINCT</code> gibi çalışır). <a href="https://www.tasarimkodlama.com/veritabani/mysql/mysql-group-by-kullanimi/">tasarimkodlama</a></li>
<li>Genellikle <code>COUNT</code>, <code>SUM</code>, <code>AVG</code>, <code>MIN</code>, <code>MAX</code> gibi <strong>aggregate (toplama) fonksiyonlarla</strong> birlikte kullanılır. <a href="https://www.geeksforgeeks.org/mysql/mysql-group-by-clause/">geeksforgeeks</a></li>
<li><code>HAVING</code> ile <strong>gruplanmış sonuçları</strong> filtreleyebilirsin (örneğin: sadece 5’ten fazla müşteri olan ülkeleri göster). <a href="https://www.datacamp.com/doc/mysql/mysql-group-by">datacamp</a></li>
</ul>
<hr />
<h3>Örnek tablo + sorgu</h3>
<p>Varsayım:  </p>
<pre><code class="lang-sql language-sql sql">musteriler
+--------+--------+
| ulke   | satis  |
+--------+--------+
| TR     | 100    |
| TR     | 200    |
| US     | 150    |
+--------+--------+</code></pre>
<pre><code class="lang-sql language-sql sql">SELECT ulke, SUM(satis) AS toplam_satis
FROM musteriler
GROUP BY ulke;</code></pre>
<p>Sonuç:</p>
<ul>
<li><code>TR</code> → <code>300</code>  </li>
<li><code>US</code> → <code>150</code>  </li>
</ul>
<p>Yani ülkelere göre satışı toplamış oldu. <a href="https://www.w3schools.com/mysql/mysql_groupby.asp">w3schools</a></p>
<hr />
<p>Eğer senin bir tablon varsa, oradaki kolon isimlerini yaz, <code>GROUP BY</code>’yi tam senin verine göre örneklerle göstereyim.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PgAdmin And PostgreSQL With docker-compose.yml</title>
		<link>https://selmantunc.com.tr/database/pgadmin-and-postgresql-with-docker-composeyml/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 13 Jan 2022 06:13:39 +0000</pubDate>
				<category><![CDATA[database]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[pqadmin]]></category>
		<guid isPermaLink="false">http://selmantunc.com.tr/2022/01/13/pgadmin-and-postgresql-with-docker-composeyml/</guid>

					<description><![CDATA[https://turreta.com/2020/07/31/docker-compose-yml-for-pgadmin-and-postgresql/ services: demo-container-db: image: postgres:12 mem_limit: 1536MB mem_reservation: 1G environment: POSTGRES_USER: turreta POSTGRES_PASSWORD: a1128f69-e6f7-4e93-a2df-3d4db6030abc ports: - &#34;5442:5432&#34; networks: - turreta_network volumes: - db-data:/var/lib/postgresql/data demo-pgadmin4: image: dpage/pgadmin4 environment: PGADMIN_DEFAULT_EMAIL: karl.sangabriel@gmail.com PGADMIN_DEFAULT_PASSWORD:&#8230;]]></description>
										<content:encoded><![CDATA[<p><a href="https://turreta.com/2020/07/31/docker-compose-yml-for-pgadmin-and-postgresql/">https://turreta.com/2020/07/31/docker-compose-yml-for-pgadmin-and-postgresql/</a></p>
<p><iframe width="356" height="200" src="https://www.youtube.com/embed/XeLg525z-eE?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen title="PgAdmin And PostgreSQL With docker-compose.yml | TURRETA | Tech Vlog"></iframe></p>
<pre><code>
services:
  demo-container-db:
    image: postgres:12
    mem_limit: 1536MB
    mem_reservation: 1G
    environment:
      POSTGRES_USER: turreta
      POSTGRES_PASSWORD: a1128f69-e6f7-4e93-a2df-3d4db6030abc
    ports:
    - &quot;5442:5432&quot;
    networks:
    - turreta_network
    volumes:
    - db-data:/var/lib/postgresql/data
  demo-pgadmin4:
    image: dpage/pgadmin4
    environment:
      PGADMIN_DEFAULT_EMAIL: karl.sangabriel@gmail.com
      PGADMIN_DEFAULT_PASSWORD: a1128f69-e6f7-4e93-a2df-3d4db6030abc
    ports:
    - &quot;8889:80&quot;
    networks:
    - turreta_network
networks:
  turreta_network:
    driver: bridge

volumes:
  db-data:
</code></pre>
<p>

docker container run –interactive –tty postgres:latest bash</p>
<p> https://support.plesk.com/hc/en-us/articles/115003321434-How-to-enable-remote-access-to-PostgreSQL-server-on-a-Plesk-server-

</p>
<p><a href="https://stackoverflow.com/questions/27273412/cannot-install-packages-inside-docker-ubuntu-image">https://stackoverflow.com/questions/27273412/cannot-install-packages-inside-docker-ubuntu-image</a>
<br></p>
<p><br></p>
<p><a href="https://stackoverflow.com/questions/37694987/connecting-to-postgresql-in-a-docker-container-from-outside">https://stackoverflow.com/questions/37694987/connecting-to-postgresql-in-a-docker-container-from-outside</a>
<br></p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
