{"id":26882,"date":"2025-08-02T06:17:41","date_gmt":"2025-08-02T03:17:41","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/"},"modified":"2025-08-02T06:17:41","modified_gmt":"2025-08-02T03:17:41","slug":"postgresql-order-by-multiple-values-in-specific-order-ceviri","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/","title":{"rendered":"PostgreSQL: ORDER BY Multiple Values in Specific Order (\u00c7eviri)"},"content":{"rendered":"<p># PostgreSQL&#8217;de Belirli S\u0131rada \u00c7oklu De\u011ferlere G\u00f6re S\u0131ralama<\/p>\n<p>PostgreSQL veritaban\u0131n\u0131zda belirli bir s\u0131rada birden fazla de\u011fere g\u00f6re s\u0131ralama yapman\u0131z m\u0131 gerekiyor?  \u00d6rne\u011fin, bir e-ticaret sitesinde \u00fcr\u00fcn kategorilerini &#8220;\u00d6ne \u00c7\u0131kanlar&#8221;, &#8220;Yeni \u00dcr\u00fcnler&#8221;, &#8220;\u0130ndirimli \u00dcr\u00fcnler&#8221; gibi belirli bir \u00f6nceli\u011fe g\u00f6re s\u0131ralamak istiyorsunuz.  Bu makalede, PostgreSQL&#8217;de bu i\u015flemi ad\u0131m ad\u0131m nas\u0131l yapaca\u011f\u0131n\u0131z\u0131, performans optimizasyonunu ve olas\u0131 sorunlar\u0131 ele alaca\u011f\u0131z.  Basit \u00f6rneklerden karma\u015f\u0131k senaryolara kadar geni\u015f bir yelpazede pratik \u00e7\u00f6z\u00fcmler sunaca\u011f\u0131z.<\/p>\n<p><strong>PostgreSQL&#8217;de S\u0131ralama: Temel Kavramlar<\/strong><\/p>\n<p>PostgreSQL&#8217;de verileri s\u0131ralamak i\u00e7in <code class=\"language-\">ORDER BY<\/code> deyimini kullan\u0131r\u0131z.  Basit bir s\u0131ralama, tek bir s\u00fctuna g\u00f6re yap\u0131l\u0131r.  Ancak, birden fazla s\u00fctuna g\u00f6re veya belirli bir de\u011fer s\u0131ras\u0131na g\u00f6re s\u0131ralamak i\u00e7in daha geli\u015fmi\u015f teknikler gereklidir.  <code class=\"language-\">CASE<\/code> deyimi ve <code class=\"language-\">IN<\/code> operat\u00f6r\u00fc, bu konuda bize yard\u0131mc\u0131 olan \u00f6nemli ara\u00e7lard\u0131r.  \u00d6rne\u011fin, <code class=\"language-\">ORDER BY<\/code> deyiminin ard\u0131ndan birden \u00e7ok s\u00fctun belirtilirse, PostgreSQL \u00f6nce ilk s\u00fctuna g\u00f6re s\u0131ralar, e\u015fitlikler durumunda ikinci s\u00fctuna ve bu \u015fekilde devam eder.  Ancak, belirli bir s\u0131ray\u0131 zorlamak i\u00e7in daha sofistike y\u00f6ntemlere ihtiya\u00e7 duyabiliriz.<\/p>\n<p><strong>PostgreSQL&#8217;de Belirli Bir S\u0131rada \u00c7oklu De\u011ferlere G\u00f6re S\u0131ralama Nas\u0131l Yap\u0131l\u0131r? (Yeni Ba\u015flayanlar \u0130\u00e7in)<\/strong><\/p>\n<p>Yeni ba\u015flayanlar i\u00e7in, basit bir \u00f6rnek \u00fczerinden ba\u015flayal\u0131m.  Diyelim ki bir <code class=\"language-\">urunler<\/code> tablomuz var ve bu tabloda <code class=\"language-\">kategori<\/code> adl\u0131 bir s\u00fctun bulunuyor. Kategoriler &#8220;\u00d6ne \u00c7\u0131kanlar&#8221;, &#8220;Yeni \u00dcr\u00fcnler&#8221; ve &#8220;Di\u011ferler&#8221; olsun.  &#8220;\u00d6ne \u00c7\u0131kanlar&#8221; \u00fcr\u00fcnlerini en \u00fcstte, ard\u0131ndan &#8220;Yeni \u00dcr\u00fcnler&#8221; ve son olarak &#8220;Di\u011ferler&#8221; \u00fcr\u00fcnlerini g\u00f6rmek istiyoruz.<\/p>\n<pre class=\"language-sql\"><code>SELECT *\nFROM urunler\nORDER BY \n  CASE kategori\n    WHEN '\u00d6ne \u00c7\u0131kanlar' THEN 1\n    WHEN 'Yeni \u00dcr\u00fcnler' THEN 2\n    ELSE 3\n  END;<\/code><\/pre>\n<p>Bu sorgu, <code class=\"language-\">CASE<\/code> deyimini kullanarak her kategoriye bir \u00f6ncelik de\u011feri atar.  PostgreSQL, bu \u00f6ncelik de\u011ferlerine g\u00f6re \u00fcr\u00fcnleri s\u0131ralar.  Bu, basit ve anla\u015f\u0131l\u0131r bir y\u00f6ntemdir, ancak daha fazla kategori ekledik\u00e7e <code class=\"language-\">CASE<\/code> deyimi uzayabilir.<\/p>\n<p><strong>Daha Karma\u015f\u0131k Senaryolar \u0130\u00e7in CASE Deyiminin Geli\u015fmi\u015f Kullan\u0131m\u0131 (Orta Seviye)<\/strong><\/p>\n<p>\u015eimdi, daha karma\u015f\u0131k bir senaryo ele alal\u0131m.  Bir e-ticaret sitesi d\u00fc\u015f\u00fcnelim. \u00dcr\u00fcnlerimiz farkl\u0131 kategorilerde ve ayr\u0131ca &#8220;indirimli&#8221; olup olmad\u0131klar\u0131 bilgisi de mevcut.  \u00d6nce &#8220;\u00d6ne \u00c7\u0131kanlar&#8221; kategorisindeki \u00fcr\u00fcnleri, ard\u0131ndan &#8220;indirimli&#8221; olan &#8220;Yeni \u00dcr\u00fcnler&#8221; kategorisindeki \u00fcr\u00fcnleri ve son olarak di\u011fer t\u00fcm \u00fcr\u00fcnleri s\u0131ralamak istiyoruz.<\/p>\n<pre class=\"language-sql\"><code>SELECT *\nFROM urunler\nORDER BY \n  CASE \n    WHEN kategori = '\u00d6ne \u00c7\u0131kanlar' THEN 1\n    WHEN kategori = 'Yeni \u00dcr\u00fcnler' AND indirimli = true THEN 2\n    ELSE 3\n  END,\n  urun_adi;<\/code><\/pre>\n<p>Bu sorgu, \u00f6nce kategori ve indirim durumuna g\u00f6re s\u0131ralama yapar.  E\u011fer birden fazla \u00fcr\u00fcn ayn\u0131 \u00f6ncelik de\u011ferine sahipse (<code class=\"language-\">ORDER BY<\/code>&#8216;\u0131n ilk k\u0131sm\u0131), <code class=\"language-\">urun_adi<\/code> s\u00fctununa g\u00f6re alfabetik olarak s\u0131ralama yapar. Bu, daha esnek ve ger\u00e7ek hayat senaryolar\u0131na daha uygun bir yakla\u015f\u0131md\u0131r.<\/p>\n<p><strong>Performans Optimizasyonu ve \u0130ndeks Kullan\u0131m\u0131<\/strong><\/p>\n<p>Yukar\u0131daki sorgular\u0131n performans\u0131n\u0131 art\u0131rmak i\u00e7in indeks kullanmak \u00f6nemlidir.  <code class=\"language-\">kategori<\/code> ve <code class=\"language-\">indirimli<\/code> s\u00fctunlar\u0131na indeks ekleyerek <code class=\"language-\">CASE<\/code> deyiminin daha h\u0131zl\u0131 \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flayabiliriz.<\/p>\n<pre class=\"language-sql\"><code>CREATE INDEX idx_kategori_indirimli ON urunler (kategori, indirimli);<\/code><\/pre>\n<p>Bu indeks, PostgreSQL&#8217;in s\u0131ralama i\u015flemini h\u0131zland\u0131racakt\u0131r, \u00f6zellikle b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in.  \u0130ndeks olu\u015fturman\u0131n maliyeti g\u00f6z \u00f6n\u00fcnde bulundurulmal\u0131 ve sadece performans art\u0131\u015f\u0131 sa\u011flayaca\u011f\u0131 durumlarda kullan\u0131lmal\u0131d\u0131r.  <code class=\"language-\">EXPLAIN ANALYZE<\/code> komutu ile sorgu plan\u0131n\u0131 inceleyerek indeks kullan\u0131m\u0131n\u0131n etkisini g\u00f6rebilirsiniz.<\/p>\n<p><strong>\u00c7oklu De\u011fer S\u0131ralamas\u0131 \u0130\u00e7in Fonksiyonlar ve CTE&#8217;lerin Kullan\u0131m\u0131 (\u0130leri D\u00fczey)<\/strong><\/p>\n<p>Daha karma\u015f\u0131k s\u0131ralama gereksinimleri i\u00e7in, kendi fonksiyonlar\u0131m\u0131z\u0131 veya Common Table Expressions (CTE) kullanabiliriz.  \u00d6rne\u011fin, farkl\u0131 \u00f6ncelik seviyelerini i\u00e7eren bir tablo olu\u015fturabilir ve bu tabloya g\u00f6re s\u0131ralama yapabiliriz.<\/p>\n<pre class=\"language-sql\"><code>WITH kategori_oncelikleri AS (\n  SELECT '\u00d6ne \u00c7\u0131kanlar' AS kategori, 1 AS oncelik UNION ALL\n  SELECT 'Yeni \u00dcr\u00fcnler', 2 UNION ALL\n  SELECT 'Di\u011ferler', 3\n)\nSELECT u.*\nFROM urunler u\nJOIN kategori_oncelikleri k ON u.kategori = k.kategori\nORDER BY k.oncelik, u.urun_adi;<\/code><\/pre>\n<p>Bu y\u00f6ntem, kategori \u00f6nceliklerini daha y\u00f6netilebilir ve \u00f6l\u00e7eklenebilir hale getirir.  Yeni bir kategori eklemek i\u00e7in sadece <code class=\"language-\">kategori_oncelikleri<\/code> tablosuna bir sat\u0131r eklemek yeterlidir.<\/p>\n<p><strong>PostgreSQL&#8217;de S\u0131ralama: Edge Case&#8217;ler ve Potansiyel Sorunlar<\/strong><\/p>\n<p><code class=\"language-\">CASE<\/code> deyiminin i\u00e7indeki ko\u015fullar\u0131n s\u0131ras\u0131 \u00f6nemlidir.  Yanl\u0131\u015f bir s\u0131raya sahip ko\u015fullar, beklenmedik sonu\u00e7lara yol a\u00e7abilir.  Ayr\u0131ca, <code class=\"language-\">NULL<\/code> de\u011ferlerin nas\u0131l ele al\u0131naca\u011f\u0131n\u0131 dikkatlice d\u00fc\u015f\u00fcnmek gerekir.  <code class=\"language-\">CASE<\/code> deyiminde <code class=\"language-\">NULL<\/code> de\u011ferleri i\u00e7in \u00f6zel bir ko\u015ful belirlemezseniz, <code class=\"language-\">NULL<\/code> de\u011ferleri genellikle en sona s\u0131ralan\u0131r.  Bu davran\u0131\u015f\u0131 kontrol etmek i\u00e7in <code class=\"language-\">COALESCE<\/code> fonksiyonunu kullanabilirsiniz.<\/p>\n<p><strong>Ger\u00e7ek D\u00fcnya \u00d6rne\u011fi: Bir Haber Sitesi \u0130\u00e7in \u0130\u00e7erik S\u0131ralama<\/strong><\/p>\n<p>Bir haber sitesi d\u00fc\u015f\u00fcn\u00fcn.  Haberleri \u00f6ne \u00e7\u0131kanlar, son dakika haberleri, kategoriye g\u00f6re ve yay\u0131n tarihine g\u00f6re s\u0131ralamak istiyoruz.  Bu durumda, \u00f6ncelik s\u0131ras\u0131na g\u00f6re bir <code class=\"language-\">CASE<\/code> deyimi ve yay\u0131n tarihine g\u00f6re ikinci bir <code class=\"language-\">ORDER BY<\/code> kriteri kullanabiliriz.  \u0130ndeksler, performans\u0131 art\u0131rmak i\u00e7in kritik \u00f6nem ta\u015f\u0131r.<\/p>\n<p><strong>Sonu\u00e7<\/strong><\/p>\n<p>PostgreSQL&#8217;de belirli bir s\u0131rada birden fazla de\u011fere g\u00f6re s\u0131ralama yapmak i\u00e7in <code class=\"language-\">CASE<\/code> deyimi, fonksiyonlar ve CTE&#8217;ler gibi \u00e7e\u015fitli y\u00f6ntemler kullanabiliriz.  Performans optimizasyonu i\u00e7in indeks kullan\u0131m\u0131 \u00f6nemlidir.  <code class=\"language-\">EXPLAIN ANALYZE<\/code> komutu ile sorgu plan\u0131n\u0131 inceleyerek optimizasyon \u00e7al\u0131\u015fmalar\u0131n\u0131 do\u011frulayabilirsiniz.  <code class=\"language-\">NULL<\/code> de\u011ferleri ve ko\u015fullar\u0131n s\u0131ras\u0131 gibi edge case&#8217;leri g\u00f6z \u00f6n\u00fcnde bulundurmak, beklenmedik sonu\u00e7lardan ka\u00e7\u0131nmak i\u00e7in gereklidir.  Do\u011fru yakla\u015f\u0131m\u0131 se\u00e7mek, veritaban\u0131n\u0131z\u0131n boyutuna, sorgu karma\u015f\u0131kl\u0131\u011f\u0131n\u0131z ve performans gereksinimlerinize ba\u011fl\u0131d\u0131r.  Daha detayl\u0131 bilgi i\u00e7in [fatihsoysal.com](https:\/\/fatihsoysal.com) sitesini ziyaret edebilirsiniz.<\/p>\n<p><strong>S\u0131k\u00e7a Sorulan Sorular:<\/strong><\/p>\n<p>1. <strong><code class=\"language-\">ORDER BY<\/code> deyiminde ka\u00e7 s\u00fctun kullan\u0131labilir?<\/strong> Teorik olarak s\u0131n\u0131rs\u0131z say\u0131da s\u00fctun kullan\u0131labilir, ancak \u00e7ok fazla s\u00fctun kullanmak performans\u0131 olumsuz etkileyebilir.<\/p>\n<p>2. <strong><code class=\"language-\">CASE<\/code> deyimi yerine ba\u015fka bir y\u00f6ntem var m\u0131?<\/strong>  Fonksiyonlar ve CTE&#8217;ler daha karma\u015f\u0131k senaryolar i\u00e7in daha uygun olabilir.<\/p>\n<p>3. <strong><code class=\"language-\">NULL<\/code> de\u011ferlerini nas\u0131l y\u00f6netebilirim?<\/strong> <code class=\"language-\">COALESCE<\/code> fonksiyonu veya <code class=\"language-\">CASE<\/code> deyimi i\u00e7inde \u00f6zel bir ko\u015ful tan\u0131mlayarak <code class=\"language-\">NULL<\/code> de\u011ferlerinin nas\u0131l s\u0131ralanaca\u011f\u0131n\u0131 kontrol edebilirsiniz.<\/p>\n<p>4. <strong>Performans sorunlar\u0131yla nas\u0131l ba\u015fa \u00e7\u0131kabilirim?<\/strong> \u0130ndeksler olu\u015fturarak, sorgu plan\u0131n\u0131 inceleyerek (<code class=\"language-\">EXPLAIN ANALYZE<\/code>) ve gereksiz s\u00fctunlar\u0131 se\u00e7mekten ka\u00e7\u0131narak performans\u0131 art\u0131rabilirsiniz.<\/p>\n<p>5. <strong>\u00c7ok b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in hangi y\u00f6ntem daha uygundur?<\/strong> \u00c7ok b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in, indeksli s\u00fctunlar\u0131 kullanarak ve m\u00fcmk\u00fcn oldu\u011funca az s\u00fctuna g\u00f6re s\u0131ralama yaparak performans\u0131 optimize etmeniz gerekir.  CTE&#8217;ler ve fonksiyonlar, b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in performans a\u00e7\u0131s\u0131ndan daha verimli olabilir.<\/p>\n<p>Yazar: Fatih Soysal<\/p>\n","protected":false},"excerpt":{"rendered":"# PostgreSQL&#8217;de Belirli S\u0131rada \u00c7oklu De\u011ferlere G\u00f6re S\u0131ralama PostgreSQL veritaban\u0131n\u0131zda belirli bir s\u0131rada birden fazla de\u011fere g\u00f6re s\u0131ralama&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-26882","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: ORDER BY Multiple Values in Specific Order (\u00c7eviri)<\/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-order-by-multiple-values-in-specific-order-ceviri\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PostgreSQL: ORDER BY Multiple Values in Specific Order (\u00c7eviri)\" \/>\n<meta property=\"og:description\" content=\"Hi\u00e7bir etiketi bulunamad\u0131.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-02T03:17:41+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-order-by-multiple-values-in-specific-order-ceviri\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"PostgreSQL: ORDER BY Multiple Values in Specific Order (\u00c7eviri)\",\"datePublished\":\"2025-08-02T03:17:41+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/\"},\"wordCount\":1033,\"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-order-by-multiple-values-in-specific-order-ceviri\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/\",\"name\":\"PostgreSQL: ORDER BY Multiple Values in Specific Order (\u00c7eviri)\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-08-02T03:17:41+00:00\",\"description\":\"Hi\u00e7bir etiketi bulunamad\u0131.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PostgreSQL: ORDER BY Multiple Values in Specific Order (\u00c7eviri)\"}]},{\"@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: ORDER BY Multiple Values in Specific Order (\u00c7eviri)","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-order-by-multiple-values-in-specific-order-ceviri\/","og_locale":"tr_TR","og_type":"article","og_title":"PostgreSQL: ORDER BY Multiple Values in Specific Order (\u00c7eviri)","og_description":"Hi\u00e7bir etiketi bulunamad\u0131.","og_url":"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-08-02T03:17:41+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-order-by-multiple-values-in-specific-order-ceviri\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"PostgreSQL: ORDER BY Multiple Values in Specific Order (\u00c7eviri)","datePublished":"2025-08-02T03:17:41+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/"},"wordCount":1033,"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-order-by-multiple-values-in-specific-order-ceviri\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/","url":"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/","name":"PostgreSQL: ORDER BY Multiple Values in Specific Order (\u00c7eviri)","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-08-02T03:17:41+00:00","description":"Hi\u00e7bir etiketi bulunamad\u0131.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/postgresql-order-by-multiple-values-in-specific-order-ceviri\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"PostgreSQL: ORDER BY Multiple Values in Specific Order (\u00c7eviri)"}]},{"@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\/26882","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=26882"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/26882\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=26882"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=26882"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=26882"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}