{"id":27532,"date":"2025-08-15T03:15:23","date_gmt":"2025-08-15T00:15:23","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/"},"modified":"2025-08-15T03:15:23","modified_gmt":"2025-08-15T00:15:23","slug":"postgresql-gruplara-gore-ortalama-hesaplama","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/","title":{"rendered":"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama"},"content":{"rendered":"<p># PostgreSQL&#8217;de Gruplanm\u0131\u015f Ortalama Hesaplama: Ad\u0131m Ad\u0131m Rehber<\/p>\n<p>PostgreSQL veritaban\u0131n\u0131zda y\u00fczlerce, binlerce hatta milyonlarca kay\u0131t var ve bu kay\u0131tlar\u0131 farkl\u0131 kategorilere ay\u0131rarak her kategori i\u00e7in ortalama bir de\u011fer hesaplaman\u0131z gerekiyor. \u00d6rne\u011fin, bir e-ticaret sitesinin \u00fcr\u00fcn sat\u0131\u015flar\u0131n\u0131 illere g\u00f6re ortalamas\u0131n\u0131 hesaplamak, bir okulun \u00f6\u011frencilerinin not ortalamalar\u0131n\u0131 s\u0131n\u0131flara g\u00f6re belirlemek veya bir \u015firketin \u00e7al\u0131\u015fanlar\u0131n\u0131n maa\u015f ortalamalar\u0131n\u0131 departmanlara g\u00f6re g\u00f6rmek isteyebilirsiniz. \u0130\u015fte tam bu noktada PostgreSQL&#8217;in g\u00fc\u00e7l\u00fc gruplama ve toplama fonksiyonlar\u0131 devreye giriyor. Bu makalede, PostgreSQL kullanarak gruplanm\u0131\u015f ortalama hesaplaman\u0131n temellerinden ileri d\u00fczey tekniklerine kadar ad\u0131m ad\u0131m bir rehber sunaca\u011f\u0131z.  PostgreSQL&#8217;de gruplanm\u0131\u015f ortalamalar\u0131 hesaplaman\u0131n \u00e7e\u015fitli y\u00f6ntemlerini, performans optimizasyonunu ve ger\u00e7ek d\u00fcnya senaryolar\u0131n\u0131 ele alaca\u011f\u0131z.<\/p>\n<p><strong>\u00d6\u011frenme Yol Haritas\u0131<\/strong><\/p>\n<p>Bu rehber, PostgreSQL&#8217;de gruplanm\u0131\u015f ortalama hesaplamay\u0131 \u00f6\u011frenmek i\u00e7in \u00fc\u00e7 seviyede ilerlemenizi sa\u011flayacak \u015fekilde tasarlanm\u0131\u015ft\u0131r:<\/p>\n<p><strong>Yeni Ba\u015flayan:<\/strong>  <code class=\"language-\">AVG()<\/code> fonksiyonunun temel kullan\u0131m\u0131, basit SQL sorgular\u0131 ve ad\u0131m ad\u0131m a\u00e7\u0131klamalar.<\/p>\n<p><strong>Orta Seviye:<\/strong>  Ger\u00e7ek d\u00fcnya senaryolar\u0131, <code class=\"language-\">GROUP BY<\/code> c\u00fcmlesinin daha geli\u015fmi\u015f kullan\u0131mlar\u0131 ve sorgu optimizasyonu teknikleri.<\/p>\n<p><strong>\u0130leri Seviye:<\/strong>  Performans analizi, karma\u015f\u0131k sorgular, <code class=\"language-\">WINDOW<\/code> fonksiyonlar\u0131 ve edge case&#8217;ler (istisnai durumlar).<\/p>\n<p><strong>PostgreSQL&#8217;de Temel Kavramlar: <code class=\"language-\">AVG()<\/code> ve <code class=\"language-\">GROUP BY<\/code><\/strong><\/p>\n<p>PostgreSQL&#8217;de gruplanm\u0131\u015f ortalamalar\u0131 hesaplaman\u0131n kalbi, <code class=\"language-\">AVG()<\/code> ve <code class=\"language-\">GROUP BY<\/code> c\u00fcmlelerinde yatar. <code class=\"language-\">AVG()<\/code>, belirtilen s\u00fctunun ortalamas\u0131n\u0131 hesaplar. <code class=\"language-\">GROUP BY<\/code>, verileri belirtilen s\u00fctunlara g\u00f6re gruplar, b\u00f6ylece <code class=\"language-\">AVG()<\/code> fonksiyonu her grup i\u00e7in ayr\u0131 bir ortalama hesaplar.<\/p>\n<p>\u00d6rne\u011fin, basit bir <code class=\"language-\">urunler<\/code> tablomuz oldu\u011funu varsayal\u0131m:<\/p>\n<p>| urun_id | urun_adi | fiyat | kategori |<br \/>\n|&#8212;|&#8212;|&#8212;|&#8212;|<br \/>\n| 1 | Kitap | 25 | Kitap |<br \/>\n| 2 | Kalem | 5 | K\u0131rtasiye |<br \/>\n| 3 | Defter | 10 | K\u0131rtasiye |<br \/>\n| 4 | Roman | 30 | Kitap |<br \/>\n| 5 | Silgi | 3 | K\u0131rtasiye |<\/p>\n<p>Her kategori i\u00e7in ortalama fiyat\u0131 hesaplamak i\u00e7in a\u015fa\u011f\u0131daki sorguyu kullanabiliriz:<\/p>\n<pre class=\"language-sql\"><code>SELECT kategori, AVG(fiyat) AS ortalama_fiyat\nFROM urunler\nGROUP BY kategori;<\/code><\/pre>\n<p>Bu sorgu, <code class=\"language-\">kategori<\/code> s\u00fctununa g\u00f6re grupland\u0131r\u0131lm\u0131\u015f veriler i\u00e7in her bir kategorinin ortalama fiyat\u0131n\u0131 (<code class=\"language-\">ortalama_fiyat<\/code> olarak adland\u0131r\u0131lm\u0131\u015f) hesaplar ve sonu\u00e7lar\u0131 g\u00f6sterir.<\/p>\n<p><strong>Nas\u0131l Yap\u0131l\u0131r? Ad\u0131m Ad\u0131m Uygulamal\u0131 K\u0131lavuz<\/strong><\/p>\n<p>\u015eimdi, daha detayl\u0131 \u00f6rneklerle <code class=\"language-\">AVG()<\/code> ve <code class=\"language-\">GROUP BY<\/code> kullan\u0131m\u0131n\u0131 inceleyelim.<\/p>\n<p><strong>1. Basit Ortalama Hesaplama:<\/strong><\/p>\n<p>\u00d6ncelikle, basit bir <code class=\"language-\">ogrenciler<\/code> tablomuz olsun:<\/p>\n<p>| ogrenci_id | sinif | not |<br \/>\n|&#8212;|&#8212;|&#8212;|<br \/>\n| 1 | 9 | 85 |<br \/>\n| 2 | 9 | 70 |<br \/>\n| 3 | 10 | 92 |<br \/>\n| 4 | 10 | 88 |<br \/>\n| 5 | 9 | 95 |<\/p>\n<p>Her s\u0131n\u0131f\u0131n ortalama notunu hesaplamak i\u00e7in \u015fu sorguyu kullan\u0131r\u0131z:<\/p>\n<pre class=\"language-sql\"><code>SELECT sinif, AVG(not) AS ortalama_not\nFROM ogrenciler\nGROUP BY sinif;<\/code><\/pre>\n<p><strong>2. Birden Fazla S\u00fctuna G\u00f6re Grupland\u0131rma:<\/strong><\/p>\n<p>E\u011fer birden fazla s\u00fctuna g\u00f6re grupland\u0131rma yapmak istiyorsak, <code class=\"language-\">GROUP BY<\/code> c\u00fcmlesinde virg\u00fclle ay\u0131rarak bu s\u00fctunlar\u0131 listeleriz. \u00d6rne\u011fin, hem s\u0131n\u0131fa hem de cinsiyete g\u00f6re ortalama notu hesaplamak i\u00e7in (cinsiyet s\u00fctunu ekleyerek):<\/p>\n<pre class=\"language-sql\"><code>SELECT sinif, cinsiyet, AVG(not) AS ortalama_not\nFROM ogrenciler\nGROUP BY sinif, cinsiyet;<\/code><\/pre>\n<p><strong>3. Ko\u015fullu Ortalama Hesaplama:<\/strong><\/p>\n<p><code class=\"language-\">WHERE<\/code> c\u00fcmlesi ile belirli ko\u015fullara uyan veriler \u00fczerinde ortalama hesaplayabiliriz. \u00d6rne\u011fin, sadece 9. s\u0131n\u0131f \u00f6\u011frencilerinin ortalama notunu hesaplamak i\u00e7in:<\/p>\n<pre class=\"language-sql\"><code>SELECT AVG(not) AS ortalama_not_9\nFROM ogrenciler\nWHERE sinif = 9;<\/code><\/pre>\n<p><strong>Ger\u00e7ek D\u00fcnya \u00d6rnekleri ve Vaka Analizleri<\/strong><\/p>\n<p><strong>\u00d6rnek 1: E-ticaret Sat\u0131\u015f Analizi:<\/strong><\/p>\n<p>Bir e-ticaret sitesi, her \u00fcr\u00fcn kategorisi i\u00e7in ortalama sat\u0131\u015f fiyat\u0131n\u0131 hesaplamak istiyor.  <code class=\"language-\">satislar<\/code> tablosunda <code class=\"language-\">urun_kategorisi<\/code> ve <code class=\"language-\">satis_fiyati<\/code> s\u00fctunlar\u0131 bulunmaktad\u0131r.  A\u015fa\u011f\u0131daki sorgu bu ihtiyac\u0131 kar\u015f\u0131lar:<\/p>\n<pre class=\"language-sql\"><code>SELECT urun_kategorisi, AVG(satis_fiyati) AS ortalama_satis_fiyati\nFROM satislar\nGROUP BY urun_kategorisi\nORDER BY ortalama_satis_fiyati DESC;<\/code><\/pre>\n<p><strong>\u00d6rnek 2:  Personel Maa\u015f Analizi:<\/strong><\/p>\n<p>Bir \u015firket, her departman i\u00e7in ortalama maa\u015f\u0131 hesaplamak istiyor. <code class=\"language-\">personeller<\/code> tablosunda <code class=\"language-\">departman<\/code> ve <code class=\"language-\">maas<\/code> s\u00fctunlar\u0131 bulunmaktad\u0131r. A\u015fa\u011f\u0131daki sorgu ile bu bilgiye ula\u015fabiliriz:<\/p>\n<pre class=\"language-sql\"><code>SELECT departman, AVG(maas) AS ortalama_maas\nFROM personeller\nGROUP BY departman\nORDER BY ortalama_maas ASC;<\/code><\/pre>\n<p><strong>Performans Optimizasyonu<\/strong><\/p>\n<p>B\u00fcy\u00fck veri k\u00fcmeleri \u00fczerinde \u00e7al\u0131\u015f\u0131rken sorgu performans\u0131 kritik \u00f6neme sahiptir.  Performans\u0131 art\u0131rmak i\u00e7in a\u015fa\u011f\u0131daki teknikleri kullanabiliriz:<\/p>\n<p>* <strong>\u0130ndeksler:<\/strong>  <code class=\"language-\">GROUP BY<\/code> c\u00fcmlesinde kullan\u0131lan s\u00fctunlara indeks eklemek sorgu performans\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131rabilir.<br \/>\n* <strong>WHERE c\u00fcmlesi:<\/strong> Gereksiz verilerin i\u015flenmesini \u00f6nlemek i\u00e7in <code class=\"language-\">WHERE<\/code> c\u00fcmlesini kullanarak filtreleme yap\u0131n.<br \/>\n* <strong>Fonksiyonel \u0130ndeksler:<\/strong>  <code class=\"language-\">AVG(sutun_adi)<\/code> gibi fonksiyonlar\u0131n sonu\u00e7lar\u0131n\u0131 \u00f6nbelle\u011fe almak i\u00e7in fonksiyonel indeksler kullanabilirsiniz.<br \/>\n* <strong>Analiz:<\/strong> <code class=\"language-\">ANALYZE<\/code> komutunu kullanarak veritaban\u0131 istatistiklerini g\u00fcncelleyin. Bu, PostgreSQL&#8217;in sorgu planlay\u0131c\u0131s\u0131n\u0131n daha iyi kararlar vermesine yard\u0131mc\u0131 olur.<\/p>\n<p>Daha detayl\u0131 performans optimizasyonu i\u00e7in [fatihsoysal.com](https:\/\/fatihsoysal.com) sitesini ziyaret edebilirsiniz. (Buraya performans optimizasyonu ile ilgili bir makaleye link verilebilir)<\/p>\n<p><strong>\u0130leri D\u00fczey Teknikler:  <code class=\"language-\">WINDOW<\/code> Fonksiyonlar\u0131<\/strong><\/p>\n<p><code class=\"language-\">WINDOW<\/code> fonksiyonlar\u0131, her sat\u0131r i\u00e7in gruplanm\u0131\u015f toplamlar hesaplaman\u0131za olanak tan\u0131r.  Bu, her sat\u0131r\u0131 ilgili grubunun ortalamas\u0131yla kar\u015f\u0131la\u015ft\u0131rabilmenizi sa\u011flar.<\/p>\n<p>\u00d6rne\u011fin, her \u00f6\u011frencinin notunun kendi s\u0131n\u0131f\u0131ndaki ortalamaya g\u00f6re nas\u0131l konumland\u0131\u011f\u0131n\u0131 g\u00f6rmek i\u00e7in a\u015fa\u011f\u0131daki sorguyu kullanabiliriz:<\/p>\n<pre class=\"language-sql\"><code>SELECT sinif, not, AVG(not) OVER (PARTITION BY sinif) AS sinif_ortalamasi\nFROM ogrenciler\nORDER BY sinif, not;<\/code><\/pre>\n<p>Bu sorgu, her \u00f6\u011frenci i\u00e7in notunu ve s\u0131n\u0131f\u0131n\u0131n ortalama notunu g\u00f6sterir.<\/p>\n<p><strong>Edge Case&#8217;ler ve \u0130stisnai Durumlar<\/strong><\/p>\n<p>* <strong>NULL De\u011ferler:<\/strong> <code class=\"language-\">AVG()<\/code> fonksiyonu NULL de\u011ferleri dikkate almaz.  NULL de\u011ferleri nas\u0131l ele almak istedi\u011finize ba\u011fl\u0131 olarak <code class=\"language-\">COALESCE()<\/code> veya <code class=\"language-\">NULLIF()<\/code> fonksiyonlar\u0131n\u0131 kullanabilirsiniz.<br \/>\n* <strong>Bo\u015f Gruplar:<\/strong>  E\u011fer bir grupta veri yoksa, <code class=\"language-\">AVG()<\/code> fonksiyonu NULL de\u011fer d\u00f6nd\u00fcr\u00fcr.  Bu durumu kontrol etmek i\u00e7in <code class=\"language-\">CASE<\/code> ifadesi kullanabilirsiniz.<\/p>\n<p><strong>Sonu\u00e7<\/strong><\/p>\n<p>Bu makalede, PostgreSQL&#8217;de gruplanm\u0131\u015f ortalamalar\u0131 hesaplaman\u0131n temellerinden ileri d\u00fczey tekniklerine kadar \u00e7e\u015fitli y\u00f6ntemleri inceledik.  Ger\u00e7ek d\u00fcnya senaryolar\u0131 ve performans optimizasyonu teknikleri ile konuyu daha iyi anlad\u0131\u011f\u0131n\u0131z\u0131 umuyoruz.  PostgreSQL&#8217;in g\u00fc\u00e7l\u00fc ara\u00e7lar\u0131n\u0131 kullanarak verilerinizden daha fazla bilgi \u00e7\u0131karabilir ve daha etkili kararlar alabilirsiniz.<\/p>\n<p><strong>S\u0131k\u00e7a Sorulan Sorular:<\/strong><\/p>\n<p>1. <strong><code class=\"language-\">AVG()<\/code> fonksiyonu NULL de\u011ferleri nas\u0131l ele al\u0131r?<\/strong>  <code class=\"language-\">AVG()<\/code> fonksiyonu NULL de\u011ferleri dikkate almaz.<br \/>\n2. <strong>Birden fazla s\u00fctuna g\u00f6re nas\u0131l grupland\u0131rma yapabilirim?<\/strong> <code class=\"language-\">GROUP BY<\/code> c\u00fcmlesinde virg\u00fclle ay\u0131rarak birden fazla s\u00fctun belirtin.<br \/>\n3. <strong>Ko\u015fullu ortalama hesaplama nas\u0131l yap\u0131l\u0131r?<\/strong> <code class=\"language-\">WHERE<\/code> c\u00fcmlesini kullanarak filtreleme yap\u0131n.<br \/>\n4. <strong>Performans\u0131 nas\u0131l art\u0131rabilirim?<\/strong> \u0130ndeksler kullan\u0131n, <code class=\"language-\">WHERE<\/code> c\u00fcmlesini optimize edin ve veritaban\u0131 istatistiklerini g\u00fcncelleyin.<br \/>\n5. <strong><code class=\"language-\">WINDOW<\/code> fonksiyonlar\u0131 ne i\u015fe yarar?<\/strong> Her sat\u0131r i\u00e7in gruplanm\u0131\u015f toplamlar hesaplamaya olanak tan\u0131rlar.<\/p>\n<p>Yazar: Fatih Soysal<\/p>\n","protected":false},"excerpt":{"rendered":"# PostgreSQL&#8217;de Gruplanm\u0131\u015f Ortalama Hesaplama: Ad\u0131m Ad\u0131m Rehber PostgreSQL veritaban\u0131n\u0131zda y\u00fczlerce, binlerce hatta milyonlarca kay\u0131t var ve bu&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[644],"tags":[],"class_list":{"0":"post-27532","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-postgresql","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama<\/title>\n<meta name=\"description\" content=\"Hi\u00e7bir etiketi bulunamad\u0131.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama\" \/>\n<meta property=\"og:description\" content=\"Hi\u00e7bir etiketi bulunamad\u0131.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-15T00:15:23+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama\",\"datePublished\":\"2025-08-15T00:15:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/\"},\"wordCount\":919,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"PostgreSQL\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/\",\"name\":\"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-08-15T00:15:23+00:00\",\"description\":\"Hi\u00e7bir etiketi bulunamad\u0131.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama","description":"Hi\u00e7bir etiketi bulunamad\u0131.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/","og_locale":"tr_TR","og_type":"article","og_title":"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama","og_description":"Hi\u00e7bir etiketi bulunamad\u0131.","og_url":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-08-15T00:15:23+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"5 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama","datePublished":"2025-08-15T00:15:23+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/"},"wordCount":919,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["PostgreSQL"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/","url":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/","name":"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-08-15T00:15:23+00:00","description":"Hi\u00e7bir etiketi bulunamad\u0131.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-ortalama-hesaplama\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"PostgreSQL: Gruplara G\u00f6re Ortalama Hesaplama"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/27532","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=27532"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/27532\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=27532"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=27532"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=27532"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}