{"id":27522,"date":"2025-08-14T21:17:37","date_gmt":"2025-08-14T18:17:37","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/"},"modified":"2025-08-14T21:17:37","modified_gmt":"2025-08-14T18:17:37","slug":"postgresql-gruplara-gore-medyan-hesaplama","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/","title":{"rendered":"PostgreSQL: Gruplara G\u00f6re Medyan Hesaplama"},"content":{"rendered":"<p># PostgreSQL&#8217;de Grup Baz\u0131nda Medyan Nas\u0131l Hesaplan\u0131r?<\/p>\n<p>PostgreSQL veritaban\u0131n\u0131zda, farkl\u0131 gruplar i\u00e7in medyan de\u011ferlerini hesaplaman\u0131z m\u0131 gerekiyor? \u00d6rne\u011fin, her \u015fehirdeki ortalama ev fiyat\u0131n\u0131n medyan\u0131n\u0131 bulmak veya her \u00fcr\u00fcn kategorisindeki sat\u0131\u015flar\u0131n medyan\u0131n\u0131 hesaplamak istiyor olabilirsiniz. Bu makalede, PostgreSQL&#8217;de grup baz\u0131nda medyan hesaplaman\u0131n farkl\u0131 y\u00f6ntemlerini, performans optimizasyonunu ve olas\u0131 sorunlar\u0131 ad\u0131m ad\u0131m ele alaca\u011f\u0131z.  PostgreSQL&#8217;in g\u00fc\u00e7l\u00fc analitik yeteneklerini kullanarak verilerinizden daha fazla bilgi \u00e7\u0131karman\u0131za yard\u0131mc\u0131 olaca\u011f\u0131z.<\/p>\n<p><strong>\u00d6\u011frenme Yol Haritas\u0131<\/strong><\/p>\n<p>Bu makale, PostgreSQL&#8217;de grup baz\u0131nda medyan hesaplamay\u0131 ad\u0131m ad\u0131m \u00f6\u011fretmek i\u00e7in \u00fc\u00e7 seviyeye ayr\u0131lm\u0131\u015ft\u0131r:<\/p>\n<p><strong>Yeni Ba\u015flayan:<\/strong> Temel SQL komutlar\u0131 ve basit bir \u00f6rnek \u00fczerinden medyan hesaplama.<\/p>\n<p><strong>Orta:<\/strong> Ger\u00e7ek d\u00fcnya senaryolar\u0131, daha karma\u015f\u0131k sorgular ve performans optimizasyon ipu\u00e7lar\u0131.<\/p>\n<p><strong>\u0130leri D\u00fczey:<\/strong> Performans analizi, s\u0131n\u0131r durumlar\u0131 (edge cases) ve daha geli\u015fmi\u015f teknikler.<\/p>\n<p><strong>PostgreSQL&#8217;de Medyan Nedir ve Neden \u00d6nemlidir?<\/strong><\/p>\n<p>Medyan, bir veri k\u00fcmesindeki de\u011ferlerin orta noktas\u0131d\u0131r. Veri k\u00fcmesi s\u0131raland\u0131\u011f\u0131nda, medyan tam ortadaki de\u011ferdir (veri say\u0131s\u0131 tek ise) veya ortadaki iki de\u011ferin ortalamas\u0131d\u0131r (veri say\u0131s\u0131 \u00e7ift ise). Ortalamaya k\u0131yasla, medyan ayk\u0131r\u0131 de\u011ferlerden (outliers) daha az etkilenir. Bu nedenle, \u00f6zellikle veri k\u00fcmenizde ayk\u0131r\u0131 de\u011ferler varsa, medyan ortalamadan daha g\u00fcvenilir bir merkezi e\u011filim \u00f6l\u00e7\u00fct\u00fc olabilir.  \u00d6rne\u011fin, bir \u015fehirdeki ev fiyatlar\u0131n\u0131 analiz ederken, birka\u00e7 \u00e7ok pahal\u0131 evin ortalamay\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde etkilemesi, medyan\u0131n ise daha ger\u00e7ek\u00e7i bir ortalama fiyat sunmas\u0131 olas\u0131d\u0131r.<\/p>\n<p><strong>PostgreSQL&#8217;de Grup Baz\u0131nda Medyan Hesaplama: Temel Teknikler (Yeni Ba\u015flayan)<\/strong><\/p>\n<p>En basit yakla\u015f\u0131m, <code class=\"language-\">WITH<\/code> c\u00fcmlesi ve pencere fonksiyonlar\u0131n\u0131 kullanmakt\u0131r.  A\u015fa\u011f\u0131daki \u00f6rnekte, <code class=\"language-\">urunler<\/code> tablosunda her kategorideki fiyatlar\u0131n medyan\u0131n\u0131 hesaplayal\u0131m:<\/p>\n<pre class=\"language-sql\"><code>WITH urun_sirali AS (\n    SELECT\n        kategori,\n        fiyat,\n        ROW_NUMBER() OVER (PARTITION BY kategori ORDER BY fiyat) as s\u0131ra,\n        COUNT(*) OVER (PARTITION BY kategori) as toplam_urun\n    FROM\n        urunler\n),\norta_sira AS (\n  SELECT kategori, fiyat, toplam_urun FROM urun_sirali WHERE s\u0131ra = (toplam_urun + 1) \/ 2\n)\nSELECT kategori, AVG(fiyat) AS median_fiyat FROM orta_sira GROUP BY kategori;<\/code><\/pre>\n<p>Bu sorgu \u00f6nce verileri kategoriye g\u00f6re s\u0131ralar ve her kategori i\u00e7in bir s\u0131ra numaras\u0131 atar. Daha sonra, her kategori i\u00e7in s\u0131ra say\u0131s\u0131 toplam \u00fcr\u00fcn say\u0131s\u0131n\u0131n yar\u0131s\u0131 olan sat\u0131r\u0131 se\u00e7er. E\u011fer toplam \u00fcr\u00fcn say\u0131s\u0131 \u00e7ift ise, iki orta de\u011ferin ortalamas\u0131n\u0131 al\u0131r.<\/p>\n<p><strong>Basit Kod \u00d6rne\u011fi (\u00dcr\u00fcn Fiyatlar\u0131):<\/strong><\/p>\n<p>A\u015fa\u011f\u0131daki \u00f6rnekte, <code class=\"language-\">urunler<\/code> adl\u0131 bir tablo oldu\u011funu ve bu tablonun <code class=\"language-\">kategori<\/code> ve <code class=\"language-\">fiyat<\/code> s\u00fctunlar\u0131n\u0131 i\u00e7erdi\u011fini varsay\u0131yoruz.<\/p>\n<pre class=\"language-sql\"><code>CREATE TABLE urunler (\n    kategori TEXT,\n    fiyat NUMERIC\n);\n\nINSERT INTO urunler (kategori, fiyat) VALUES\n('Elektronik', 100), ('Elektronik', 150), ('Elektronik', 200),\n('Giyim', 50), ('Giyim', 75), ('Giyim', 100),\n('Kitap', 25), ('Kitap', 30), ('Kitap', 35), ('Kitap', 40);\n\n--Yukar\u0131daki sorguyu buraya yap\u0131\u015ft\u0131r\u0131n.<\/code><\/pre>\n<p><strong>Grup Baz\u0131nda Medyan Hesaplama: Ger\u00e7ek D\u00fcnya \u00d6rne\u011fi ve Optimizasyon (Orta Seviye)<\/strong><\/p>\n<p>\u015eimdi, daha ger\u00e7ek\u00e7i bir senaryoyu ele alal\u0131m. Bir e-ticaret \u015firketinin m\u00fc\u015fteri sipari\u015flerini i\u00e7eren bir veritaban\u0131 oldu\u011funu varsayal\u0131m. Her m\u00fc\u015fterinin yapt\u0131\u011f\u0131 sipari\u015flerin medyan de\u011ferini hesaplamak istiyoruz.  Veri k\u00fcmemiz milyonlarca sat\u0131rdan olu\u015fabilir, bu y\u00fczden performans optimizasyonu \u00e7ok \u00f6nemlidir.<\/p>\n<pre class=\"language-sql\"><code>WITH siparisler_sirali AS (\n    SELECT\n        musteri_id,\n        siparis_tutari,\n        ROW_NUMBER() OVER (PARTITION BY musteri_id ORDER BY siparis_tutari) as s\u0131ra,\n        COUNT(*) OVER (PARTITION BY musteri_id) as toplam_siparis\n    FROM\n        siparisler\n),\nmedian_siparis AS (\n    SELECT musteri_id, siparis_tutari, toplam_siparis FROM siparisler_sirali\n    WHERE s\u0131ra IN ((toplam_siparis+1)\/2, (toplam_siparis+2)\/2)\n)\nSELECT musteri_id, AVG(siparis_tutari) AS median_siparis_tutari FROM median_siparis GROUP BY musteri_id;<\/code><\/pre>\n<p><strong>Optimizasyon \u0130pu\u00e7lar\u0131:<\/strong><\/p>\n<p>* <strong>\u0130ndeksler:<\/strong> <code class=\"language-\">musteri_id<\/code> ve <code class=\"language-\">siparis_tutari<\/code> s\u00fctunlar\u0131na indeks eklemek sorgu performans\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131racakt\u0131r.<br \/>\n* <strong>Par\u00e7alama:<\/strong> B\u00fcy\u00fck tablolar\u0131 par\u00e7alamak (partitioning) sorgular\u0131 h\u0131zland\u0131rabilir.<br \/>\n* <strong>Materyalize G\u00f6r\u00fcn\u00fcmler:<\/strong> S\u0131k kullan\u0131lan medyan hesaplamalar\u0131 i\u00e7in materyalize g\u00f6r\u00fcn\u00fcmler (materialized views) olu\u015fturmak veritaban\u0131 performans\u0131n\u0131 iyile\u015ftirebilir.  Bu g\u00f6r\u00fcn\u00fcmler, \u00f6nceden hesaplanm\u0131\u015f sonu\u00e7lar\u0131 depolar ve sorgular\u0131n daha h\u0131zl\u0131 \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar.<\/p>\n<p><strong>\u0130leri D\u00fczey Teknikler: Performans Analizi ve S\u0131n\u0131r Durumlar\u0131 (\u0130leri Seviye)<\/strong><\/p>\n<p>\u00c7ok b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in, yukar\u0131daki y\u00f6ntemler hala yava\u015f olabilir. Bu durumda, daha geli\u015fmi\u015f teknikler kullanmak gerekebilir.  \u00d6rne\u011fin,  PostgreSQL&#8217;in uzant\u0131lar\u0131ndan biri olan <code class=\"language-\">pg_stat_statements<\/code> uzant\u0131s\u0131 ile sorgu performans\u0131n\u0131 analiz edebilir ve darbo\u011fazlar\u0131 belirleyebilirsiniz.<\/p>\n<p><strong>S\u0131n\u0131r Durumlar\u0131 (Edge Cases):<\/strong><\/p>\n<p>* <strong>NULL De\u011ferler:<\/strong>  Medyan hesaplamas\u0131nda NULL de\u011ferleri nas\u0131l ele alaca\u011f\u0131n\u0131z\u0131 belirlemeniz gerekir.  <code class=\"language-\">COALESCE<\/code> fonksiyonu ile NULL de\u011ferleri s\u0131f\u0131r veya ba\u015fka bir de\u011ferle de\u011fi\u015ftirebilirsiniz.<br \/>\n* <strong>\u00c7ok B\u00fcy\u00fck Veri K\u00fcmeleri:<\/strong> \u00c7ok b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in, \u00f6rnekleme (sampling) teknikleri kullanarak medyan\u0131 tahmin edebilirsiniz. Bu, daha h\u0131zl\u0131 sonu\u00e7lar verir ancak baz\u0131 do\u011fruluk kayb\u0131na yol a\u00e7abilir.<br \/>\n* <strong>\u00c7oklu Medyanlar:<\/strong>  Baz\u0131 durumlarda, birden \u00e7ok medyan de\u011feri olabilir. \u00d6rne\u011fin, \u00e7ift say\u0131da g\u00f6zlem varsa ve iki orta de\u011fer farkl\u0131 ise, bu durum dikkate al\u0131nmal\u0131d\u0131r.<\/p>\n<p><strong>PostgreSQL&#8217;de Grup Baz\u0131nda Medyan Hesaplama: Alternatif Yakla\u015f\u0131mlar<\/strong><\/p>\n<p>Yukar\u0131da a\u00e7\u0131klanan y\u00f6ntemlerin yan\u0131 s\u0131ra,  PostgreSQL&#8217;de grup baz\u0131nda medyan hesaplamak i\u00e7in farkl\u0131 yakla\u015f\u0131mlar da mevcuttur.  Bunlar aras\u0131nda,  PostgreSQL fonksiyonlar\u0131 kullanarak \u00f6zel fonksiyonlar yazmak veya  PostgreSQL&#8217;in uzant\u0131lar\u0131ndan faydalanmak yer al\u0131r.  Ancak, bu y\u00f6ntemler genellikle daha karma\u015f\u0131k ve uzmanl\u0131k gerektirir.  Do\u011fru y\u00f6ntemi se\u00e7erken, veri k\u00fcmenizin b\u00fcy\u00fckl\u00fc\u011f\u00fc, performans gereksinimleri ve uzmanl\u0131k seviyeniz gibi fakt\u00f6rleri g\u00f6z \u00f6n\u00fcnde bulundurman\u0131z \u00f6nemlidir.<\/p>\n<p><strong>Sonu\u00e7<\/strong><\/p>\n<p>Bu makale, PostgreSQL&#8217;de grup baz\u0131nda medyan hesaplaman\u0131n farkl\u0131 y\u00f6ntemlerini, performans optimizasyonunu ve olas\u0131 sorunlar\u0131 ele ald\u0131.  Veri analizi s\u00fcre\u00e7lerinizde medyan kullan\u0131m\u0131, ortalamaya g\u00f6re daha sa\u011flam ve ayk\u0131r\u0131 de\u011ferlerden daha az etkilenen sonu\u00e7lar elde etmenizi sa\u011flar.  Do\u011fru y\u00f6ntemi se\u00e7mek ve performans\u0131 optimize etmek i\u00e7in verilerinizin \u00f6zelliklerini ve ihtiya\u00e7lar\u0131n\u0131z\u0131 dikkatlice de\u011ferlendirmeniz \u00f6nemlidir. Daha fazla bilgi i\u00e7in [Fatih Soysal&#8217;\u0131n web sitesini](https:\/\/fatihsoysal.com) ziyaret edebilirsiniz.<\/p>\n<p><strong>S\u0131k\u00e7a Sorulan Sorular:<\/strong><\/p>\n<p>1. <strong>PostgreSQL&#8217;de medyan hesaplaman\u0131n en h\u0131zl\u0131 yolu nedir?<\/strong>  En h\u0131zl\u0131 yol, veri k\u00fcmesinin b\u00fcy\u00fckl\u00fc\u011f\u00fcne ve yap\u0131s\u0131na ba\u011fl\u0131d\u0131r.  \u0130ndeksler, par\u00e7alama ve materyalize g\u00f6r\u00fcn\u00fcmler performans\u0131 art\u0131rabilir.  \u00c7ok b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in \u00f6rnekleme teknikleri d\u00fc\u015f\u00fcn\u00fclebilir.<\/p>\n<p>2. <strong>NULL de\u011ferleri medyan hesaplamas\u0131nda nas\u0131l ele alabilirim?<\/strong>  <code class=\"language-\">COALESCE<\/code> fonksiyonu ile NULL de\u011ferleri s\u0131f\u0131r veya ba\u015fka bir de\u011ferle de\u011fi\u015ftirebilirsiniz.<\/p>\n<p>3. <strong>Medyan hesaplamas\u0131 i\u00e7in hangi PostgreSQL uzant\u0131lar\u0131 kullan\u0131labilir?<\/strong>  \u00d6zel ihtiya\u00e7lar\u0131n\u0131za g\u00f6re \u00e7e\u015fitli uzant\u0131lar kullan\u0131labilir, ancak genellikle standart SQL fonksiyonlar\u0131 yeterlidir.<\/p>\n<p>4. <strong>Grup baz\u0131nda medyan hesaplamas\u0131 i\u00e7in alternatif bir y\u00f6ntem var m\u0131?<\/strong>  Evet,  PostgreSQL fonksiyonlar\u0131 kullanarak \u00f6zel fonksiyonlar yazmak veya  PostgreSQL&#8217;in uzant\u0131lar\u0131ndan faydalanmak m\u00fcmk\u00fcnd\u00fcr.<\/p>\n<p>5. <strong>PostgreSQL&#8217;de medyan hesaplamas\u0131n\u0131n performans\u0131n\u0131 nas\u0131l analiz edebilirim?<\/strong>  <code class=\"language-\">pg_stat_statements<\/code> uzant\u0131s\u0131 sorgu performans\u0131n\u0131 analiz etmek i\u00e7in kullan\u0131labilir.<\/p>\n<p>Yazar: Fatih Soysal<\/p>\n","protected":false},"excerpt":{"rendered":"# PostgreSQL&#8217;de Grup Baz\u0131nda Medyan Nas\u0131l Hesaplan\u0131r? PostgreSQL veritaban\u0131n\u0131zda, farkl\u0131 gruplar i\u00e7in medyan de\u011ferlerini hesaplaman\u0131z m\u0131 gerekiyor? \u00d6rne\u011fin,&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-27522","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 Medyan 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-medyan-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 Medyan 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-medyan-hesaplama\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-14T18:17:37+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=\"6 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-medyan-hesaplama\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"PostgreSQL: Gruplara G\u00f6re Medyan Hesaplama\",\"datePublished\":\"2025-08-14T18:17:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/\"},\"wordCount\":1058,\"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-medyan-hesaplama\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/\",\"name\":\"PostgreSQL: Gruplara G\u00f6re Medyan Hesaplama\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-08-14T18:17:37+00:00\",\"description\":\"Hi\u00e7bir etiketi bulunamad\u0131.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PostgreSQL: Gruplara G\u00f6re Medyan 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 Medyan 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-medyan-hesaplama\/","og_locale":"tr_TR","og_type":"article","og_title":"PostgreSQL: Gruplara G\u00f6re Medyan Hesaplama","og_description":"Hi\u00e7bir etiketi bulunamad\u0131.","og_url":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-08-14T18:17:37+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"6 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"PostgreSQL: Gruplara G\u00f6re Medyan Hesaplama","datePublished":"2025-08-14T18:17:37+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/"},"wordCount":1058,"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-medyan-hesaplama\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/","url":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/","name":"PostgreSQL: Gruplara G\u00f6re Medyan Hesaplama","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-08-14T18:17:37+00:00","description":"Hi\u00e7bir etiketi bulunamad\u0131.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-gruplara-gore-medyan-hesaplama\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"PostgreSQL: Gruplara G\u00f6re Medyan 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\/27522","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=27522"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/27522\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=27522"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=27522"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=27522"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}