{"id":31518,"date":"2025-10-10T21:31:29","date_gmt":"2025-10-10T18:31:29","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/"},"modified":"2025-10-10T21:31:29","modified_gmt":"2025-10-10T18:31:29","slug":"power-bida-dax-fonksiyonlarini-anlama-kilavuzu","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/","title":{"rendered":"Power BI&#8217;da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu"},"content":{"rendered":"<p><body><\/p>\n<p>Power BI&#8217;da veri analizini bir \u00fcst seviyeye ta\u015f\u0131mak m\u0131 istiyorsunuz? DAX fonksiyonlar\u0131, i\u015f zekas\u0131 projelerinizde ihtiyac\u0131n\u0131z olan dinamik ve g\u00fc\u00e7l\u00fc hesaplamalar\u0131n anahtar\u0131d\u0131r. Bu kapsaml\u0131 rehberle DAX&#8217;\u0131 s\u0131f\u0131rdan \u00f6\u011frenin ve raporlar\u0131n\u0131z\u0131 d\u00f6n\u00fc\u015ft\u00fcrmeye ba\u015flay\u0131n!<\/p>\n<p>G\u00fcn\u00fcm\u00fcz i\u015f d\u00fcnyas\u0131nda veri, \u015firketlerin en de\u011ferli varl\u0131klar\u0131ndan biri haline gelmi\u015ftir. Ancak, ham verinin tek ba\u015f\u0131na anlam ifade etmedi\u011fini biliyoruz. Bu veriyi anlaml\u0131 i\u00e7g\u00f6r\u00fclere d\u00f6n\u00fc\u015ft\u00fcrmek, gelece\u011fe y\u00f6nelik stratejiler belirlemek ve karar alma s\u00fcre\u00e7lerini optimize etmek i\u00e7in g\u00fc\u00e7l\u00fc analiz ara\u00e7lar\u0131na ihtiya\u00e7 duyar\u0131z. Power BI, bu ara\u00e7lar\u0131n ba\u015f\u0131nda gelir ve i\u015fletmelere verilerini g\u00f6rselle\u015ftirmeleri, etkile\u015fimli raporlar olu\u015fturmalar\u0131 ve karma\u015f\u0131k analizler yapmalar\u0131 i\u00e7in e\u015fsiz bir platform sunar.<\/p>\n<p>Peki, Power BI&#8217;\u0131n kalbinde ne yat\u0131yor? Cevap: DAX (Data Analysis Expressions). DAX, Power BI, SQL Server Analysis Services (SSAS) ve Excel Power Pivot gibi Microsoft \u00fcr\u00fcnlerinde kullan\u0131lan bir form\u00fcl dilidir. Veri modellerinizde yeni bilgiler olu\u015fturman\u0131z\u0131, karma\u015f\u0131k hesaplamalar yapman\u0131z\u0131 ve dinamik \u00f6l\u00e7\u00fcler tan\u0131mlaman\u0131z\u0131 sa\u011flar. Bir an i\u00e7in hayal edin: Sat\u0131\u015f raporlar\u0131n\u0131zda sadece bug\u00fcnk\u00fc toplam sat\u0131\u015f\u0131 g\u00f6rmek yerine, ge\u00e7en y\u0131la g\u00f6re y\u00fczde ka\u00e7 artt\u0131\u011f\u0131n\u0131, en karl\u0131 \u00fcr\u00fcn kategorisinin hangisi oldu\u011funu veya m\u00fc\u015fteri kayb\u0131n\u0131n b\u00f6lgelere g\u00f6re nas\u0131l de\u011fi\u015fti\u011fini an\u0131nda g\u00f6rebiliyorsunuz. \u0130\u015fte bu t\u00fcr geli\u015fmi\u015f ve dinamik analizler, DAX sayesinde m\u00fcmk\u00fcn olur.<\/p>\n<p>\u00c7o\u011fu zaman Power BI kullan\u0131c\u0131lar\u0131, veri modelini olu\u015fturma ve basit g\u00f6rselle\u015ftirmeler yapma konusunda rahat hissederken, DAX&#8217;\u0131n derinliklerine inmekten \u00e7ekinebilirler. Ancak DAX, Power BI&#8217;\u0131n ger\u00e7ek g\u00fcc\u00fcn\u00fc ortaya \u00e7\u0131karan temel bile\u015fendir. Statik raporlar yerine, sorular\u0131n\u0131za an\u0131nda cevap verebilen, interaktif ve esnek raporlar olu\u015fturmak istiyorsan\u0131z, DAX \u00f6\u011frenmek bir zorunluluktur. Bu makale boyunca, DAX&#8217;\u0131n temel prensiplerinden ba\u015flayarak ileri d\u00fczey kullan\u0131m tekniklerine kadar bir\u00e7ok konuya de\u011finecek, ger\u00e7ek d\u00fcnya senaryolar\u0131yla DAX&#8217;\u0131n nas\u0131l hayat kurtar\u0131c\u0131 bir ara\u00e7 olabilece\u011fini ad\u0131m ad\u0131m ke\u015ffedece\u011fiz. Art\u0131k sadece veriyi g\u00f6steren de\u011fil, veriyi konu\u015fturabilen raporlar haz\u0131rlayabileceksiniz. DAX bilmek, sizi sadece bir rapor haz\u0131rlay\u0131c\u0131s\u0131ndan, veriden anlam \u00e7\u0131karan bir analiste d\u00f6n\u00fc\u015ft\u00fcrecektir.<\/p>\n<h2>DAX Nedir ve Temel Kavramlar\u0131 Nelerdir?<\/h2>\n<p>DAX (Data Analysis Expressions), Microsoft taraf\u0131ndan geli\u015ftirilmi\u015f, form\u00fcl tabanl\u0131 bir dildir. Excel&#8217;deki form\u00fcllere benzer ancak \u00e7ok daha g\u00fc\u00e7l\u00fc ve ili\u015fkisel veri modelleriyle \u00e7al\u0131\u015fmak \u00fczere tasarlanm\u0131\u015ft\u0131r. DAX, Power BI&#8217;da yeni s\u00fctunlar (calculated columns) ve \u00f6l\u00e7\u00fcler (measures) olu\u015fturmak i\u00e7in kullan\u0131l\u0131r. Bu sayede, mevcut verilerinizden t\u00fcretilmi\u015f yeni bilgiler elde edebilir, raporlar\u0131n\u0131zda daha zengin analizler sunabilirsiniz. DAX&#8217;\u0131 anlamak i\u00e7in \u00f6ncelikle onun temel yap\u0131 ta\u015flar\u0131n\u0131 ve \u00e7al\u0131\u015fma mant\u0131\u011f\u0131n\u0131 kavramak \u00f6nemlidir.<\/p>\n<h3>Hesaplanan S\u00fctunlar m\u0131, \u00d6l\u00e7\u00fcler mi? Farklar\u0131 Nelerdir?<\/h3>\n<p>DAX ile olu\u015fturabilece\u011finiz iki ana yap\u0131 vard\u0131r: Hesaplanan S\u00fctunlar (Calculated Columns) ve \u00d6l\u00e7\u00fcler (Measures).<\/p>\n<ul>\n<li><strong>Hesaplanan S\u00fctunlar:<\/strong> Ad\u0131ndan da anla\u015f\u0131laca\u011f\u0131 gibi, mevcut bir tablonuzdaki di\u011fer s\u00fctunlara dayal\u0131 olarak yeni bir s\u00fctun olu\u015fturur. Bu s\u00fctun, her sat\u0131r i\u00e7in ayr\u0131 ayr\u0131 hesaplan\u0131r ve modelinize fiziksel olarak eklenir. \u00d6rne\u011fin, &#8220;Birim Fiyat&#8221; ve &#8220;Miktar&#8221; s\u00fctunlar\u0131n\u0131z varsa, &#8220;Toplam Tutar&#8221; ad\u0131nda yeni bir hesaplanan s\u00fctun olu\u015fturarak her sat\u0131r i\u00e7in (yani her sat\u0131\u015f i\u015flemi i\u00e7in) toplam tutar\u0131 hesaplayabilirsiniz.\n<pre><code>\nToplam Tutar = 'Satislar'[Birim Fiyat] * 'Satislar'[Miktar]\n<\/pre>\n<p><\/code><br \/>\n        Hesaplanan s\u00fctunlar, modelinize veri ekledi\u011fi i\u00e7in dosya boyutunu art\u0131rabilir ve performans\u0131 etkileyebilir. Genellikle filtreleme veya sat\u0131r d\u00fczeyinde kategorizasyon i\u00e7in kullan\u0131l\u0131rlar.<\/li>\n<li><strong>\u00d6l\u00e7\u00fcler (Measures):<\/strong> \u00d6l\u00e7\u00fcler ise modelinize fiziksel olarak eklenmezler. Bunun yerine, bir g\u00f6rselle\u015ftirme veya raporlama ba\u011flam\u0131nda an\u0131nda hesaplanan dinamik form\u00fcllerdir. \u00d6rne\u011fin, toplam sat\u0131\u015f miktar\u0131n\u0131 g\u00f6steren bir \u00f6l\u00e7\u00fc, raporunuzdaki filtrelemelere (y\u0131l, b\u00f6lge, \u00fcr\u00fcn vb.) g\u00f6re an\u0131nda adapte olur ve ilgili toplam\u0131 g\u00f6sterir. \u00d6l\u00e7\u00fcler, genellikle say\u0131sal de\u011ferlerin toplanmas\u0131, ortalamas\u0131 veya say\u0131lmas\u0131 gibi toplama (aggregation) i\u015flemleri i\u00e7in kullan\u0131l\u0131r.\n<pre><code>\nToplam Satis Miktari = SUM('Satislar'[Miktar])\n<\/pre>\n<p><\/code><br \/>\n        \u00d6l\u00e7\u00fcler, model boyutunu art\u0131rmaz ve raporlamada \u00e7ok daha esnektir. Genellikle performans a\u00e7\u0131s\u0131ndan hesaplanan s\u00fctunlara g\u00f6re tercih edilirler.<\/li>\n<\/ul>\n<div class=\"expert-tip\">\n  Uzman \u0130pucu: Genellikle, performans ve esneklik i\u00e7in m\u00fcmk\u00fcn oldu\u011funca \u00f6l\u00e7\u00fcleri, hesaplanan s\u00fctunlara tercih edin. Hesaplanan s\u00fctunlar yaln\u0131zca sat\u0131r d\u00fczeyinde bir de\u011feri depolaman\u0131z gerekiyorsa veya raporunuzda do\u011frudan filtrelenecek bir kategori olu\u015fturuyorsan\u0131z kullan\u0131lmal\u0131d\u0131r.\n<\/div>\n<h3>Ba\u011flamlar\u0131n G\u00fcc\u00fc: Sat\u0131r Ba\u011flam\u0131 ve Filtre Ba\u011flam\u0131<\/h3>\n<p>DAX'\u0131n en kritik ve ba\u015flang\u0131\u00e7ta en kafa kar\u0131\u015ft\u0131r\u0131c\u0131 olabilecek iki kavram\u0131 Sat\u0131r Ba\u011flam\u0131 (Row Context) ve Filtre Ba\u011flam\u0131 (Filter Context)d\u0131r.<\/p>\n<ul>\n<li><strong>Sat\u0131r Ba\u011flam\u0131:<\/strong> Bir hesaplanan s\u00fctun olu\u015fturdu\u011funuzda veya iterat\u00f6r fonksiyonlar (SUMX, AVERAGEX gibi X ile biten fonksiyonlar) kulland\u0131\u011f\u0131n\u0131zda devreye girer. Bu ba\u011flamda, DAX form\u00fcl\u00fc her bir sat\u0131r i\u00e7in ayr\u0131 ayr\u0131 de\u011ferlendirilir. \u00d6rne\u011fin, yukar\u0131daki \"Toplam Tutar\" hesaplanan s\u00fctununda, form\u00fcl her bir sat\u0131\u015f sat\u0131r\u0131 i\u00e7in o sat\u0131rdaki \"Birim Fiyat\" ve \"Miktar\" de\u011ferlerini kullanarak hesaplama yapar.<\/li>\n<li><strong>Filtre Ba\u011flam\u0131:<\/strong> Bir g\u00f6rselle\u015ftirme (tablo, grafik vb.) \u00fczerinde bir \u00f6l\u00e7\u00fcy\u00fc kulland\u0131\u011f\u0131n\u0131zda ortaya \u00e7\u0131kar. G\u00f6rselle\u015ftirme \u00fczerinde uygulanan filtreler (dilimleyiciler, di\u011fer g\u00f6rsellerin etkile\u015fimleri, rapor d\u00fczeyindeki filtreler) veri k\u00fcmesini daralt\u0131r. \u00d6l\u00e7\u00fc, yaln\u0131zca bu filtrelenmi\u015f veri k\u00fcmesi i\u00e7inde hesaplan\u0131r. \u00d6rne\u011fin, bir \"Toplam Sat\u0131\u015f Miktar\u0131\" \u00f6l\u00e7\u00fcn\u00fcz varsa ve raporunuzda \"2023 Y\u0131l\u0131\" filtresi uyguland\u0131ysa, \u00f6l\u00e7\u00fc yaln\u0131zca 2023 y\u0131l\u0131na ait sat\u0131\u015flar\u0131 toplayacakt\u0131r.<\/li>\n<\/ul>\n<p>DAX'\u0131n g\u00fcc\u00fc, \u00f6zellikle <code class=\"language-dax\">CALCULATE<\/code> fonksiyonu arac\u0131l\u0131\u011f\u0131yla Filtre Ba\u011flam\u0131n\u0131 manip\u00fcle edebilme yetene\u011finden gelir. Bu, dinamik ve g\u00fc\u00e7l\u00fc kar\u015f\u0131la\u015ft\u0131rmal\u0131 analizler yapmam\u0131z\u0131 sa\u011flar. Bu kavramlar\u0131 i\u00e7selle\u015ftirmek, DAX'ta ustala\u015fman\u0131n temelini olu\u015fturur ve size karma\u015f\u0131k i\u015f sorunlar\u0131na \u00e7\u00f6z\u00fcmler \u00fcretme yetene\u011fi kazand\u0131r\u0131r.<\/p>\n<h2>Temel DAX Fonksiyonlar\u0131 ile Hesaplamalara \u0130lk Ad\u0131m Nas\u0131l At\u0131l\u0131r?<\/h2>\n<p>DAX'\u0131n temelini att\u0131ktan sonra, s\u0131ra en s\u0131k kullan\u0131lan ve her Power BI analistinin bilmesi gereken fonksiyonlar\u0131 \u00f6\u011frenmeye geliyor. Bu b\u00f6l\u00fcmde, veri toplama, sayma ve ko\u015fullu hesaplamalar yapman\u0131z\u0131 sa\u011flayacak temel DAX fonksiyonlar\u0131n\u0131 ad\u0131m ad\u0131m inceleyece\u011fiz. Her bir fonksiyonun ne i\u015fe yarad\u0131\u011f\u0131n\u0131 ve ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l kullan\u0131labilece\u011fini kod \u00f6rnekleriyle birlikte g\u00f6rece\u011fiz.<\/p>\n<h3>Toplama ve Sayma Fonksiyonlar\u0131<\/h3>\n<p>Veri analizi genellikle verileri \u00f6zetlemekle ba\u015flar. Toplama (aggregation) ve sayma fonksiyonlar\u0131, bu \u00f6zetleme i\u015flemlerinin olmazsa olmaz\u0131d\u0131r. \u0130\u015fte en temel olanlar:<\/p>\n<ul>\n<li><strong>SUM:<\/strong> Belirtilen bir s\u00fctundaki t\u00fcm say\u0131lar\u0131n toplam\u0131n\u0131 d\u00f6nd\u00fcr\u00fcr. En basit ve en \u00e7ok kullan\u0131lan fonksiyonlardan biridir.\n<pre><code>\nToplam Satis = SUM('Fatura Detay'[Satis Tutari])\n<\/pre>\n<p><\/code><br \/>\n        Bu \u00f6l\u00e7\u00fc, 'Fatura Detay' tablosundaki 'Satis Tutari' s\u00fctunundaki t\u00fcm de\u011ferleri toplayarak size genel toplam sat\u0131\u015f\u0131 verir. Raporunuzda herhangi bir filtre uyguland\u0131\u011f\u0131nda, yaln\u0131zca filtrelenen verilere g\u00f6re toplam\u0131 g\u00f6sterecektir.<\/li>\n<li><strong>AVERAGE:<\/strong> Belirtilen bir s\u00fctundaki t\u00fcm say\u0131lar\u0131n ortalamas\u0131n\u0131 d\u00f6nd\u00fcr\u00fcr.\n<pre><code>\nOrtalama Fiyat = AVERAGE('Urunler'[Birim Fiyat])\n<\/pre>\n<p><\/code><br \/>\n        Bu \u00f6l\u00e7\u00fc, 'Urunler' tablosundaki 'Birim Fiyat' s\u00fctununun ortalama de\u011ferini hesaplar.<\/li>\n<li><strong>MIN \/ MAX:<\/strong> Belirtilen bir s\u00fctundaki en d\u00fc\u015f\u00fck (MIN) veya en y\u00fcksek (MAX) de\u011feri d\u00f6nd\u00fcr\u00fcr.\n<pre><code>\nEn Dusuk Satis = MIN('Fatura Detay'[Satis Tutari])\nEn Yuksek Satis = MAX('Fatura Detay'[Satis Tutari])\n<\/pre>\n<p><\/code><br \/>\n        Bu \u00f6l\u00e7\u00fcler, belirli bir ba\u011flamdaki minimum ve maksimum sat\u0131\u015f tutarlar\u0131n\u0131 verir.<\/li>\n<li><strong>COUNT \/ COUNTA:<\/strong> <code class=\"language-dax\">COUNT<\/code> bir s\u00fctundaki say\u0131sal de\u011ferleri, <code class=\"language-dax\">COUNTA<\/code> ise bo\u015f olmayan t\u00fcm de\u011ferleri (say\u0131, metin, tarih) sayar.\n<pre><code>\nUrun Adet = COUNT('Urunler'[Urun ID])\nMusteri Sayisi = COUNTA('Musteriler'[Ad Soyad])\n<\/pre>\n<p><\/code><br \/>\n        <code class=\"language-dax\">COUNT<\/code> genellikle ID gibi say\u0131sal s\u00fctunlar i\u00e7in kullan\u0131l\u0131rken, <code class=\"language-dax\">COUNTA<\/code> metin i\u00e7eren s\u00fctunlar i\u00e7in de ge\u00e7erlidir.<\/li>\n<li><strong>DISTINCTCOUNT:<\/strong> Belirtilen bir s\u00fctundaki benzersiz de\u011ferlerin say\u0131s\u0131n\u0131 d\u00f6nd\u00fcr\u00fcr. Bu, Power BI'da \"benzersiz say\u0131m\" yapmak i\u00e7in vazge\u00e7ilmez bir fonksiyondur.\n<pre><code>\nBenzersiz Musteri Sayisi = DISTINCTCOUNT('Fatura Detay'[Musteri ID])\n<\/pre>\n<p><\/code><br \/>\n        Bu \u00f6l\u00e7\u00fc, ka\u00e7 farkl\u0131 m\u00fc\u015fterinin al\u0131\u015fveri\u015f yapt\u0131\u011f\u0131n\u0131 g\u00f6sterir, bir m\u00fc\u015fterinin birden fazla al\u0131\u015fveri\u015f yapm\u0131\u015f olsa bile onu bir kez sayar.<\/li>\n<\/ul>\n<h3>CALCULATE ile Filtreleri Kontrol Etme<\/h3>\n<p><code class=\"language-dax\">CALCULATE<\/code>, DAX'\u0131n en g\u00fc\u00e7l\u00fc ve en \u00e7ok y\u00f6nl\u00fc fonksiyonudur. Filtre ba\u011flam\u0131n\u0131 de\u011fi\u015ftirmemize olanak tan\u0131r, bu da raporlar\u0131m\u0131zda karma\u015f\u0131k ve dinamik kar\u015f\u0131la\u015ft\u0131rmalar yapabilmemiz anlam\u0131na gelir. <code class=\"language-dax\">CALCULATE<\/code> temel olarak iki arg\u00fcman al\u0131r: bir ifade ve bir veya daha fazla filtre.<\/p>\n<pre><code>\nCALCULATE(<ifade>, <filtre1>, [<filtre2>, ...])\n<\/pre>\n<p><\/code><\/p>\n<p>\u00d6rne\u011fin, toplam sat\u0131\u015flar\u0131 hesaplayan bir \u00f6l\u00e7\u00fcn\u00fcz oldu\u011funu varsayal\u0131m: <code class=\"language-dax\">Toplam Satis = SUM('Satislar'[Miktar] * 'Satislar'[Birim Fiyat])<\/code>. \u015eimdi sadece \"Kitap\" kategorisindeki sat\u0131\u015flar\u0131 g\u00f6rmek isteyelim:<\/p>\n<pre><code>\nKitap Satis = CALCULATE(\n    [Toplam Satis],\n    'Urunler'[Kategori] = \"Kitap\"\n)\n<\/pre>\n<p><\/code><\/p>\n<p>Bu \u00f6l\u00e7\u00fc, hangi filtreler uygulan\u0131rsa uygulans\u0131n, her zaman yaln\u0131zca \"Kitap\" kategorisindeki \u00fcr\u00fcnlerin sat\u0131\u015f toplam\u0131n\u0131 d\u00f6nd\u00fcrecektir. <code class=\"language-dax\">CALCULATE<\/code> fonksiyonu, mevcut filtre ba\u011flam\u0131n\u0131 \"Kitap\" kategorisi ile ge\u00e7ersiz k\u0131lar ve hesaplamay\u0131 bu yeni ba\u011flamda yapar.<\/p>\n<p>Ger\u00e7ek d\u00fcnya senaryosu: \"Ge\u00e7en Y\u0131l\u0131n Ayn\u0131 D\u00f6nemi Sat\u0131\u015flar\u0131\" veya \"Y\u00fcksek Karl\u0131 \u00dcr\u00fcnlerin Sat\u0131\u015f\u0131\" gibi analizler yapmak i\u00e7in <code class=\"language-dax\">CALCULATE<\/code> vazge\u00e7ilmezdir. Bu fonksiyonu ustaca kullanmak, Power BI'da profesyonel d\u00fczeyde analizler yapman\u0131n anahtar\u0131d\u0131r. <code class=\"language-dax\">CALCULATE<\/code> ile birlikte <code class=\"language-dax\">ALL<\/code>, <code class=\"language-dax\">ALLEXCEPT<\/code> ve <code class=\"language-dax\">ALLSELECTED<\/code> gibi filtre de\u011fi\u015ftirici fonksiyonlar\u0131 kullanarak \u00e7ok daha karma\u015f\u0131k ve esnek hesaplamalar yapabiliriz. Bir sonraki b\u00f6l\u00fcmde bu ileri d\u00fczey fonksiyonlara daha yak\u0131ndan bakaca\u011f\u0131z.<\/p>\n<h2>Zaman Zekas\u0131 ve \u0130leri D\u00fczey DAX Teknikleri: Karma\u015f\u0131k Analizler Nas\u0131l Yap\u0131l\u0131r?<\/h2>\n<p>Veri analizinde zaman, en kritik boyutlardan biridir. D\u00f6nemler aras\u0131 kar\u015f\u0131la\u015ft\u0131rmalar yapmak, k\u00fcm\u00fclatif toplamlar\u0131 g\u00f6rmek veya b\u00fcy\u00fcme oranlar\u0131n\u0131 izlemek, i\u015f zekas\u0131 raporlar\u0131n\u0131n temelini olu\u015fturur. DAX, bu t\u00fcr tarih tabanl\u0131 analizleri kolayla\u015ft\u0131rmak i\u00e7in g\u00fc\u00e7l\u00fc Zaman Zekas\u0131 (Time Intelligence) fonksiyonlar\u0131na sahiptir. Ayr\u0131ca, daha karma\u015f\u0131k i\u015f mant\u0131\u011f\u0131n\u0131 uygulamak ve DAX form\u00fcllerinin okunabilirli\u011fini ve performans\u0131n\u0131 art\u0131rmak i\u00e7in ileri d\u00fczey teknikler de mevcuttur. Bu b\u00f6l\u00fcmde, zaman zekas\u0131 fonksiyonlar\u0131n\u0131 ve <code class=\"language-dax\">VAR<\/code> de\u011fi\u015fkenleri ile filtre de\u011fi\u015ftiricilerin kullan\u0131m\u0131n\u0131 derinlemesine inceleyece\u011fiz.<\/p>\n<h3>Tarih ve Saat Fonksiyonlar\u0131 ile Dinamik Analizler<\/h3>\n<p>Power BI'da zaman zekas\u0131 fonksiyonlar\u0131n\u0131 kullanabilmek i\u00e7in \u00f6ncelikle modelinizde bir tarih tablosunun (Date Table) bulunmas\u0131 ve bunun ana veri tablonuzla do\u011fru bir \u015fekilde ili\u015fkilendirilmi\u015f olmas\u0131 hayati \u00f6nem ta\u015f\u0131r. \u0130\u015fte baz\u0131 temel zaman zekas\u0131 fonksiyonlar\u0131:<\/p>\n<ul>\n<li><strong>TOTALYTD \/ TOTALQTD \/ TOTALMTD:<\/strong> Y\u0131l\u0131n Ba\u015ftan Bug\u00fcne (YTD), \u00c7eyre\u011fin Ba\u015ftan Bug\u00fcne (QTD) veya Ay\u0131n Ba\u015ftan Bug\u00fcne (MTD) toplamlar\u0131n\u0131 hesaplar.\n<pre><code>\nYil Bazinda K\u00fcm\u00fclatif Satis = TOTALYTD(\n    [Toplam Satis],\n    'Tarih'[Date]\n)\n<\/pre>\n<p><\/code><br \/>\n        Bu \u00f6l\u00e7\u00fc, se\u00e7ilen y\u0131la ait k\u00fcm\u00fclatif sat\u0131\u015flar\u0131, o y\u0131l\u0131n ba\u015flang\u0131c\u0131ndan se\u00e7ili tarihe kadar olan d\u00f6nem i\u00e7in g\u00f6sterir.<\/li>\n<li><strong>SAMEPERIODLASTYEAR:<\/strong> Ge\u00e7en y\u0131l\u0131n ayn\u0131 d\u00f6nemine ait verileri almak i\u00e7in filtre ba\u011flam\u0131n\u0131 de\u011fi\u015ftirir. Genellikle <code class=\"language-dax\">CALCULATE<\/code> ile birlikte kullan\u0131l\u0131r.\n<pre><code>\nGecen Yil Satis = CALCULATE(\n    [Toplam Satis],\n    SAMEPERIODLASTYEAR('Tarih'[Date])\n)\n<\/pre>\n<p><\/code><br \/>\n        Bu \u00f6l\u00e7\u00fc, mevcut filtrelenmi\u015f d\u00f6nemin (\u00f6rne\u011fin, Mart 2023) bir \u00f6nceki y\u0131l\u0131n ayn\u0131 d\u00f6nemine (Mart 2022) ait sat\u0131\u015flar\u0131n\u0131 getirir.<\/li>\n<li><strong>DATEADD:<\/strong> Belirtilen bir tarihten belirli bir aral\u0131k (g\u00fcn, ay, \u00e7eyrek, y\u0131l) ileri veya geri giden tarihler i\u00e7in filtre ba\u011flam\u0131n\u0131 de\u011fi\u015ftirir.\n<pre><code>\nBir Onceki Ay Satis = CALCULATE(\n    [Toplam Satis],\n    DATEADD('Tarih'[Date], -1, MONTH)\n)\n<\/pre>\n<p><\/code><br \/>\n        Bu \u00f6rnek, mevcut filtrelenmi\u015f d\u00f6nemin bir ay \u00f6nceki sat\u0131\u015flar\u0131n\u0131 hesaplar.<\/li>\n<\/ul>\n<div class=\"expert-tip\">\n  Uzman \u0130pucu: Her zaman \u00f6zel bir tarih tablosu kullan\u0131n ve bu tabloyu veri modelinizdeki ilgili tarih s\u00fctunlar\u0131yla ba\u011flay\u0131n. Power BI'\u0131n otomatik tarih hiyerar\u015fileri yerine kendi tarih tablonuzu kullanmak, zaman zekas\u0131 fonksiyonlar\u0131n\u0131n do\u011fru ve tutarl\u0131 \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar.\n<\/div>\n<h3>De\u011fi\u015fkenler (VAR) ve ALL, ALLEXCEPT Kullan\u0131m\u0131<\/h3>\n<p>Karma\u015f\u0131k DAX form\u00fcllerini yazarken okunabilirli\u011fi ve performans\u0131 art\u0131rmak i\u00e7in de\u011fi\u015fkenler (<code class=\"language-dax\">VAR<\/code>) kullanmak \u00e7ok faydal\u0131d\u0131r. De\u011fi\u015fkenler, bir form\u00fcl i\u00e7inde bir ifadenin sonucunu depolaman\u0131za ve bu sonucu form\u00fcl\u00fcn di\u011fer b\u00f6l\u00fcmlerinde tekrar kullanman\u0131za olanak tan\u0131r. B\u00f6ylece, ayn\u0131 hesaplamay\u0131 birden \u00e7ok kez tekrarlamaktan ka\u00e7\u0131n\u0131r ve form\u00fcllerinizi daha anla\u015f\u0131l\u0131r hale getirirsiniz.<\/p>\n<pre><code>\nYeni Islem = \nVAR BugunkuSatis = [Toplam Satis]\nVAR GecenAySatis = CALCULATE(\n    [Toplam Satis],\n    DATEADD('Tarih'[Date], -1, MONTH)\n)\nRETURN\n    IF(\n        ISBLANK(GecenAySatis),\n        BLANK(),\n        (BugunkuSatis - GecenAySatis) \/ GecenAySatis\n    )\n<\/pre>\n<p><\/code><\/p>\n<p>Bu \u00f6rnekte, <code class=\"language-dax\">BugunkuSatis<\/code> ve <code class=\"language-dax\">GecenAySatis<\/code> de\u011fi\u015fkenleri tan\u0131mland\u0131ktan sonra, bu de\u011ferler kullan\u0131larak bir b\u00fcy\u00fcme oran\u0131 hesaplanm\u0131\u015ft\u0131r. <code class=\"language-dax\">VAR<\/code> bloklar\u0131 <code class=\"language-dax\">RETURN<\/code> anahtar kelimesiyle sonland\u0131r\u0131l\u0131r.<\/p>\n<p><code class=\"language-dax\">ALL<\/code> ve <code class=\"language-dax\">ALLEXCEPT<\/code> gibi filtre de\u011fi\u015ftirici fonksiyonlar, <code class=\"language-dax\">CALCULATE<\/code> ile birlikte kullan\u0131larak filtre ba\u011flam\u0131n\u0131 daha hassas bir \u015fekilde manip\u00fcle etmemizi sa\u011flar.<\/p>\n<ul>\n<li><strong>ALL:<\/strong> Belirtilen tablodaki veya s\u00fctundaki t\u00fcm filtreleri kald\u0131r\u0131r. Bu, genel toplamlar veya t\u00fcm kategorilerdeki ortalamalar gibi de\u011ferleri hesaplamak i\u00e7in kullan\u0131\u015fl\u0131d\u0131r.\n<pre><code>\nToplam Satis Orani = \nDIVIDE(\n    [Toplam Satis],\n    CALCULATE(\n        [Toplam Satis],\n        ALL('Urunler') \/\/ Urunler tablosundaki t\u00fcm filtreleri kald\u0131r\n    )\n)\n<\/pre>\n<p><\/code><br \/>\n        Bu \u00f6l\u00e7\u00fc, mevcut \u00fcr\u00fcn\u00fcn (veya \u00fcr\u00fcn kategorisinin) toplam sat\u0131\u015f\u0131n\u0131n, t\u00fcm \u00fcr\u00fcnlerin toplam sat\u0131\u015f\u0131na oran\u0131n\u0131 verir.<\/li>\n<li><strong>ALLEXCEPT:<\/strong> Belirtilen bir tablodaki t\u00fcm filtreleri kald\u0131r\u0131r, ancak belirtilen s\u00fctunlar \u00fczerindeki filtreleri korur.\n<pre><code>\nKategori Satis Orani = \nDIVIDE(\n    [Toplam Satis],\n    CALCULATE(\n        [Toplam Satis],\n        ALLEXCEPT('Urunler', 'Urunler'[Kategori]) \/\/ Sadece Kategori filtresini koru\n    )\n)\n<\/pre>\n<p><\/code><br \/>\n        Bu \u00f6rnekte, \u00f6l\u00e7\u00fc mevcut filtrelenmi\u015f \u00fcr\u00fcn\u00fcn sat\u0131\u015f\u0131n\u0131, o \u00fcr\u00fcn\u00fcn ait oldu\u011fu kategorinin toplam sat\u0131\u015f\u0131na oranlar.<\/li>\n<\/ul>\n<h3>Vaka Analizi: Y\u0131ll\u0131k Sat\u0131\u015f Kar\u015f\u0131la\u015ft\u0131rmas\u0131<\/h3>\n<p>Bir perakende \u015firketinde \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131z\u0131 ve her \u00fcr\u00fcn kategorisinin ge\u00e7en y\u0131la g\u00f6re performans\u0131n\u0131 analiz etmek istedi\u011finizi varsayal\u0131m. Bu analizi DAX kullanarak nas\u0131l yapabilirsiniz? A\u015fa\u011f\u0131daki \u00f6l\u00e7\u00fcler, size bu kar\u015f\u0131la\u015ft\u0131rmay\u0131 yapma imkan\u0131 sunar:<\/p>\n<pre><code>\n\/\/ Toplam Sat\u0131\u015f \u00d6l\u00e7\u00fcs\u00fc\nToplam Satis = SUM('Satislar'[Satis Tutari])\n\n\/\/ Ge\u00e7en Y\u0131l\u0131n Ayn\u0131 D\u00f6nemi Sat\u0131\u015flar\u0131\nGecen Yil Ayni Donem Satis = \nCALCULATE(\n    [Toplam Satis],\n    SAMEPERIODLASTYEAR('Tarih'[Date])\n)\n\n\/\/ Y\u0131ll\u0131k Sat\u0131\u015f De\u011fi\u015fim Oran\u0131\nYillik Satis Degisim Orani = \nVAR BugunkuSatis = [Toplam Satis]\nVAR GecenYilSatis = [Gecen Yil Ayni Donem Satis]\nRETURN\n    IF(\n        ISBLANK(GecenYilSatis) || GecenYilSatis = 0,\n        BLANK(),\n        DIVIDE(\n            (BugunkuSatis - GecenYilSatis),\n            GecenYilSatis\n        )\n    )\n<\/pre>\n<p><\/code><\/p>\n<p>Bu \u00f6l\u00e7\u00fcler sayesinde, Power BI raporunuzda bir \u00fcr\u00fcn kategorisi se\u00e7ti\u011finizde, o kategorinin mevcut d\u00f6nemdeki sat\u0131\u015f\u0131n\u0131, ge\u00e7en y\u0131lki ayn\u0131 d\u00f6nemdeki sat\u0131\u015f\u0131n\u0131 ve bu iki d\u00f6nem aras\u0131ndaki de\u011fi\u015fim oran\u0131n\u0131 an\u0131nda g\u00f6rebilirsiniz. Bu, y\u00f6neticilerin hangi kategorilerin iyi performans g\u00f6sterdi\u011fini veya hangilerinin iyile\u015ftirme gerektirdi\u011fini h\u0131zl\u0131ca anlamas\u0131na yard\u0131mc\u0131 olur.<\/p>\n<p>Bu ileri d\u00fczey teknikler ve zaman zekas\u0131 fonksiyonlar\u0131, Power BI raporlar\u0131n\u0131z\u0131 sadece veri g\u00f6steren panolardan, i\u015f kararlar\u0131n\u0131 do\u011frudan etkileyen dinamik analiz ara\u00e7lar\u0131na d\u00f6n\u00fc\u015ft\u00fcrmenizi sa\u011flayacakt\u0131r. DAX'ta ustala\u015fmak, bu fonksiyonlar\u0131 do\u011fru ba\u011flamda ve do\u011fru ama\u00e7la kullanma yetene\u011fini kazanmakla m\u00fcmk\u00fcnd\u00fcr.<\/p>\n<h2>DAX Performans Optimizasyonu ve En \u0130yi Uygulamalar: Raporlar\u0131n\u0131z\u0131 Nas\u0131l H\u0131zland\u0131r\u0131rs\u0131n\u0131z?<\/h2>\n<p>Power BI ve DAX ile karma\u015f\u0131k ve dinamik raporlar olu\u015fturmak harikad\u0131r, ancak b\u00fcy\u00fck veri setleriyle \u00e7al\u0131\u015f\u0131rken performans sorunlar\u0131yla kar\u015f\u0131la\u015fmak ka\u00e7\u0131n\u0131lmaz olabilir. Yava\u015f y\u00fcklenen raporlar, kullan\u0131c\u0131 deneyimini olumsuz etkiler ve analitik s\u00fcrecinizi sekteye u\u011frat\u0131r. Bu b\u00f6l\u00fcmde, DAX form\u00fcllerinizi ve veri modelinizi optimize ederek Power BI raporlar\u0131n\u0131z\u0131n h\u0131z\u0131n\u0131 ve verimlili\u011fini nas\u0131l art\u0131rabilece\u011finize dair en iyi uygulamalar\u0131 ve ipu\u00e7lar\u0131n\u0131 payla\u015faca\u011f\u0131z.<\/p>\n<h3>S\u00fctun Yerine \u00d6l\u00e7\u00fc Kullan\u0131m\u0131n\u0131n \u00d6nemi<\/h3>\n<p>Daha \u00f6nce de bahsetti\u011fimiz gibi, hesaplanan s\u00fctunlar ve \u00f6l\u00e7\u00fcler aras\u0131ndaki temel farklardan biri, hesaplanan s\u00fctunlar\u0131n veriyi fiziksel olarak modelinize eklemesidir. Bu durumun performans \u00fczerinde \u00f6nemli etkileri olabilir:<\/p>\n<ul>\n<li><strong>Dosya Boyutu:<\/strong> Her yeni hesaplanan s\u00fctun, modelin dosya boyutunu art\u0131r\u0131r. B\u00fcy\u00fck modeller, y\u00fcklenmesi ve i\u015flenmesi daha uzun s\u00fcrer.<\/li>\n<li><strong>Yenileme S\u00fcresi:<\/strong> Veri yenileme s\u0131ras\u0131nda, hesaplanan s\u00fctunlar yeniden hesaplan\u0131r. Modelinizde \u00e7ok say\u0131da hesaplanan s\u00fctun varsa, bu durum yenileme s\u00fcresini \u00f6nemli \u00f6l\u00e7\u00fcde uzatabilir.<\/li>\n<li><strong>Bellek Kullan\u0131m\u0131:<\/strong> Hesaplanan s\u00fctunlar bellekte yer kaplar. \u00d6zellikle d\u00fc\u015f\u00fck \u00f6zellikli cihazlarda veya Power BI hizmetinde payla\u015f\u0131lan kapasitelerde bellek s\u0131n\u0131rlar\u0131na ula\u015fmak performans\u0131 d\u00fc\u015f\u00fcrebilir.<\/li>\n<\/ul>\n<p>\u00d6l\u00e7\u00fcler ise anl\u0131k olarak hesaplan\u0131r ve modelinize fiziksel veri eklemezler. Bu nedenle, m\u00fcmk\u00fcn oldu\u011funca hesaplanan s\u00fctunlar yerine \u00f6l\u00e7\u00fcler kullanmaya \u00e7al\u0131\u015f\u0131n. Bir de\u011feri filtrelemek veya dilimleyici olarak kullanmak i\u00e7in bir s\u00fctuna ihtiyac\u0131n\u0131z varsa, o zaman hesaplanan s\u00fctun mant\u0131kl\u0131 olabilir. Ancak, bir de\u011feri sadece g\u00f6rselle\u015ftirmede g\u00f6stermek veya ba\u015fka bir hesaplaman\u0131n par\u00e7as\u0131 olarak kullanmak i\u00e7inse, \u00f6l\u00e7\u00fc kesinlikle tercih edilmelidir.<\/p>\n<pre><code>\n\/\/ K\u00f6t\u00fc \u00f6rnek: Hesaplanan S\u00fctun\nToplam Satis Kolon = 'Satislar'[Miktar] * 'Satislar'[Birim Fiyat] \/\/ Model boyutunu art\u0131r\u0131r\n\n\/\/ \u0130yi \u00f6rnek: \u00d6l\u00e7\u00fc\nToplam Satis Olcu = SUMX('Satislar', 'Satislar'[Miktar] * 'Satislar'[Birim Fiyat]) \/\/ Dinamik ve daha verimli\n<\/pre>\n<p><\/code><\/p>\n<h3>DAX Studio ile Sorgu Analizi<\/h3>\n<p>DAX Studio, DAX sorgular\u0131n\u0131z\u0131 test etmek, hata ay\u0131klamak ve optimize etmek i\u00e7in vazge\u00e7ilmez bir \u00fccretsiz ara\u00e7t\u0131r. Power BI Desktop'a harici bir ara\u00e7 olarak entegre edilebilir ve size \u015funlar\u0131 sa\u011flar:<\/p>\n<ul>\n<li><strong>Sorgu Performans\u0131:<\/strong> \u00c7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131z DAX sorgular\u0131n\u0131n ne kadar zaman ald\u0131\u011f\u0131n\u0131 ve hangi ad\u0131mlarda darbo\u011faz ya\u015fand\u0131\u011f\u0131n\u0131 g\u00f6rmenizi sa\u011flar.<\/li>\n<li><strong>Sunucu Zaman\u0131 ve Motor Zaman\u0131:<\/strong> Sorgunuzun VertiPaq motorunda (analitik motor) ve form\u00fcl motorunda ne kadar zaman harcad\u0131\u011f\u0131n\u0131 g\u00f6sterir. Bu, hangi alanlarda optimizasyon yapman\u0131z gerekti\u011fini anlaman\u0131za yard\u0131mc\u0131 olur.<\/li>\n<li><strong>Sanal Tablolar\u0131 \u0130nceleme:<\/strong> DAX form\u00fcllerinizin ara sonu\u00e7lar\u0131n\u0131 olu\u015fturan sanal tablolar\u0131 (Table Functions) g\u00f6r\u00fcnt\u00fclemenizi sa\u011flar, b\u00f6ylece form\u00fcl mant\u0131\u011f\u0131n\u0131z\u0131 daha iyi anlayabilirsiniz.<\/li>\n<\/ul>\n<p>DAX Studio'yu kullanarak yava\u015f \u00e7al\u0131\u015fan \u00f6l\u00e7\u00fclerinizi tespit edebilir, karma\u015f\u0131k <code class=\"language-dax\">CALCULATE<\/code> veya iterat\u00f6r fonksiyonlar\u0131n\u0131n performans\u0131n\u0131 analiz edebilir ve darbo\u011fazlar\u0131 gidererek rapor h\u0131z\u0131n\u0131z\u0131 art\u0131rabilirsiniz. Her Power BI uzman\u0131n\u0131n ara\u00e7 setinde mutlaka bulunmas\u0131 gereken bir yaz\u0131l\u0131md\u0131r.<\/p>\n<h3>Modelleme \u0130pu\u00e7lar\u0131 ve \u0130li\u015fkilerin \u00d6nemi<\/h3>\n<p>DAX form\u00fcllerinin performans\u0131, b\u00fcy\u00fck \u00f6l\u00e7\u00fcde alt\u0131nda yatan veri modelinin kalitesine ba\u011fl\u0131d\u0131r:<\/p>\n<ul>\n<li><strong>Y\u0131ld\u0131z \u015eemas\u0131 (Star Schema):<\/strong> Power BI modelleri i\u00e7in y\u0131ld\u0131z \u015femas\u0131 en iyi uygulamad\u0131r. Merkezde bir veya daha fazla olgu tablosu (fact table) ve etraf\u0131nda boyut tablolar\u0131 (dimension tables) bulunur. Bu yap\u0131, DAX sorgular\u0131n\u0131n daha verimli \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar.<\/li>\n<li><strong>Gereksiz S\u00fctunlar\u0131 Kald\u0131rma:<\/strong> Kullanmad\u0131\u011f\u0131n\u0131z s\u00fctunlar\u0131 Power Query'de modelden kald\u0131r\u0131n. Bu, dosya boyutunu k\u00fc\u00e7\u00fclt\u00fcr ve bellek kullan\u0131m\u0131n\u0131 azalt\u0131r.<\/li>\n<li><strong>Do\u011fru Veri Tipleri:<\/strong> S\u00fctunlar\u0131n\u0131z i\u00e7in en uygun veri tipini kullan\u0131n. \u00d6rne\u011fin, say\u0131sal olmas\u0131 gereken bir s\u00fctun metin olarak tan\u0131mlanm\u0131\u015fsa, bu performans\u0131 olumsuz etkileyebilir.<\/li>\n<li><strong>\u0130li\u015fkilerin Optimizasyonu:<\/strong> Tablolar aras\u0131ndaki ili\u015fkilerin tek y\u00f6nl\u00fc (Single) ve tek-\u00e7ok (One-to-Many) olmas\u0131 genellikle en verimli olan\u0131d\u0131r. \u00c7ift y\u00f6nl\u00fc (Bi-directional) ili\u015fkiler, gerekti\u011finde dikkatli kullan\u0131lmal\u0131 ve performansa olan etkileri test edilmelidir.<\/li>\n<\/ul>\n<p>Bu optimizasyon tekniklerini uygulayarak, Power BI raporlar\u0131n\u0131z\u0131n daha h\u0131zl\u0131 y\u00fcklenmesini sa\u011flayabilir, kullan\u0131c\u0131 deneyimini iyile\u015ftirebilir ve daha b\u00fcy\u00fck veri setleriyle bile sorunsuz bir \u015fekilde \u00e7al\u0131\u015fabilirsiniz. DAX'\u0131n g\u00fcc\u00fcn\u00fc tam anlam\u0131yla kullanmak i\u00e7in, hem form\u00fcl yaz\u0131m\u0131nda hem de veri modellemede en iyi uygulamalara sad\u0131k kalmak esast\u0131r.<\/p>\n<h2>Sonu\u00e7: DAX Uzmanl\u0131\u011f\u0131na Giden Yol ve S\u0131k\u00e7a Sorulan Sorular<\/h2>\n<p>Power BI'da veri analizi yolculu\u011fumuzda, DAX'\u0131n ne kadar g\u00fc\u00e7l\u00fc ve vazge\u00e7ilmez bir ara\u00e7 oldu\u011funu g\u00f6rd\u00fck. Basit toplamalardan karma\u015f\u0131k zaman zekas\u0131 analizlerine, dinamik kar\u015f\u0131la\u015ft\u0131rmalardan performans optimizasyonuna kadar, DAX her ad\u0131mda bize verilerimizden daha derin anlamlar \u00e7\u0131karmam\u0131z i\u00e7in kap\u0131lar a\u00e7t\u0131. DAX'\u0131 anlamak ve ustaca kullanmak, sizi sadece bir rapor kullan\u0131c\u0131s\u0131ndan, i\u015f kararlar\u0131na y\u00f6n veren bir veri analistine d\u00f6n\u00fc\u015ft\u00fcr\u00fcr.<\/p>\n<p>DAX \u00f6\u011frenme s\u00fcreci sab\u0131r ve pratik gerektirse de, her yeni fonksiyonu ve kavram\u0131 \u00f6\u011frendi\u011finizde, verilerle olan etkile\u015fiminizin ne kadar zenginle\u015fti\u011fini fark edeceksiniz. Unutmay\u0131n, en iyi uygulamalar\u0131 takip etmek, temiz ve optimize edilmi\u015f form\u00fcller yazmak ve veri modelinizi do\u011fru yap\u0131land\u0131rmak, DAX'tan maksimum verim alman\u0131z\u0131 sa\u011flayacakt\u0131r. Ger\u00e7ek d\u00fcnya senaryolar\u0131nda \u00f6\u011frendi\u011finiz bilgileri uygulamaktan \u00e7ekinmeyin; \u00e7\u00fcnk\u00fc DAX'\u0131 en iyi \u00f6\u011frenme yolu, onu kullanarak pratik yapmakt\u0131r. Bu rehberin, Power BI'da DAX yolculu\u011funuzun temel ta\u015f\u0131 olmas\u0131n\u0131 umuyoruz. \u015eimdi s\u0131ra sizde: Verilerinizi DAX ile konu\u015fturmaya ba\u015flay\u0131n!<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<ol>\n<li>\n<h3>DAX \u00f6\u011frenmek ne kadar s\u00fcrer ve nereden ba\u015flamal\u0131y\u0131m?<\/h3>\n<p>DAX \u00f6\u011frenme s\u00fcresi ki\u015fiden ki\u015fiye de\u011fi\u015fir, ancak temel fonksiyonlar\u0131 ve kavramlar\u0131 anlamak birka\u00e7 hafta s\u00fcrebilir. \u0130leri d\u00fczeyde ustala\u015fmak aylar s\u00fcren s\u00fcrekli pratik ve deneyim gerektirir. Ba\u015flamak i\u00e7in bu makaledeki temel kavramlar\u0131 ve fonksiyonlar\u0131 anlamak iyi bir ba\u015flang\u0131\u00e7t\u0131r. Ard\u0131ndan, resmi Microsoft belgelerini, \u00e7evrimi\u00e7i kurslar\u0131 (\u00f6rn. Udemy, Coursera), YouTube kanallar\u0131n\u0131 ve bloglar\u0131 takip edebilirsiniz. \"SQLBI\" gibi kaynaklar DAX \u00f6\u011frenimi i\u00e7in alt\u0131n standartt\u0131r.<\/p>\n<\/li>\n<li>\n<h3>DAX sadece Power BI i\u00e7in mi ge\u00e7erlidir?<\/h3>\n<p>Hay\u0131r, DAX yaln\u0131zca Power BI'a \u00f6zg\u00fc de\u011fildir. Ayn\u0131 form\u00fcl dili, Microsoft Excel'deki Power Pivot \u00f6zelli\u011finde ve SQL Server Analysis Services (SSAS) Tabular modellerinde de kullan\u0131l\u0131r. Bu nedenle, DAX becerileri bu platformlar aras\u0131nda aktar\u0131labilir ve size geni\u015f bir analitik ara\u00e7 yelpazesi \u00fczerinde \u00e7al\u0131\u015fma yetene\u011fi kazand\u0131r\u0131r.<\/p>\n<\/li>\n<li>\n<h3>Hesaplanm\u0131\u015f s\u00fctunlar m\u0131, \u00f6l\u00e7\u00fcler mi tercih edilmeli?<\/h3>\n<p>Genel kural olarak, m\u00fcmk\u00fcn oldu\u011funca \u00f6l\u00e7\u00fcleri (measures) tercih etmelisiniz. \u00d6l\u00e7\u00fcler dinamiktir, bellek verimlidir ve rapor performans\u0131n\u0131 daha az etkiler. Hesaplanan s\u00fctunlar (calculated columns) ise model boyutunu art\u0131r\u0131r ve her veri yenilemede yeniden hesaplan\u0131r. Hesaplanan s\u00fctunlar yaln\u0131zca sat\u0131r d\u00fczeyinde bir de\u011fer depolaman\u0131z gerekti\u011finde veya filtreleme\/dilimleme i\u00e7in benzersiz bir kategori olu\u015fturuyorsan\u0131z kullan\u0131lmal\u0131d\u0131r.<\/p>\n<\/li>\n<li>\n<h3>DAX form\u00fcllerim neden yava\u015f \u00e7al\u0131\u015f\u0131yor? Nas\u0131l h\u0131zland\u0131rabilirim?<\/h3>\n<p>DAX form\u00fcllerinin yava\u015f \u00e7al\u0131\u015fmas\u0131n\u0131n bir\u00e7ok nedeni olabilir. Bunlardan baz\u0131lar\u0131 \u015funlard\u0131r: \u00c7ok say\u0131da hesaplanan s\u00fctun kullan\u0131m\u0131, karma\u015f\u0131k iterat\u00f6r fonksiyonlar\u0131 (SUMX, AVERAGEX gibi) \u00fczerinde \u00e7ok b\u00fcy\u00fck tablolar\u0131n kullan\u0131lmas\u0131, verimsiz veri modeli tasar\u0131m\u0131, \u00e7ift y\u00f6nl\u00fc ili\u015fkilerin a\u015f\u0131r\u0131 kullan\u0131m\u0131 veya gereksiz karma\u015f\u0131k filtre ba\u011flam\u0131 manip\u00fclasyonlar\u0131. H\u0131zland\u0131rmak i\u00e7in DAX Studio ile performans analizi yap\u0131n, \u00f6l\u00e7\u00fclere \u00f6ncelik verin, veri modelinizi y\u0131ld\u0131z \u015femas\u0131na g\u00f6re optimize edin ve gereksiz s\u00fctunlar\u0131 modelinizden \u00e7\u0131kar\u0131n.<\/p>\n<\/li>\n<li>\n<h3>DAX \u00f6\u011frenirken en s\u0131k yap\u0131lan hatalar nelerdir?<\/h3>\n<p>Yeni ba\u015flayanlar\u0131n yapt\u0131\u011f\u0131 yayg\u0131n hatalar aras\u0131nda Sat\u0131r Ba\u011flam\u0131 ve Filtre Ba\u011flam\u0131 aras\u0131ndaki fark\u0131 kar\u0131\u015ft\u0131rmak, <code class=\"language-dax\">CALCULATE<\/code> fonksiyonunun g\u00fcc\u00fcn\u00fc tam olarak anlamamak, iterat\u00f6r fonksiyonlar\u0131n\u0131 verimsiz kullanmak, performans sorunlar\u0131n\u0131 g\u00f6z ard\u0131 etmek ve iyi bir veri modelleme prati\u011fi yapmamak say\u0131labilir. D\u00fczenli pratik yapmak, hata ay\u0131klama tekniklerini \u00f6\u011frenmek ve topluluk kaynaklar\u0131ndan faydalanmak bu hatalar\u0131n \u00fcstesinden gelmenize yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<\/li>\n<\/ol>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Power BI&#8217;da veri analizini bir \u00fcst seviyeye ta\u015f\u0131mak m\u0131 istiyorsunuz? DAX fonksiyonlar\u0131, i\u015f zekas\u0131 projelerinizde ihtiyac\u0131n\u0131z olan dinamik&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":[1],"tags":[],"class_list":{"0":"post-31518","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","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>Power BI&#039;da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu<\/title>\n<meta name=\"description\" content=\"Power BI&#039;da veri analizini bir \u00fcst seviyeye ta\u015f\u0131mak m\u0131 istiyorsunuz? DAX fonksiyonlar\u0131, i\u015f zekas\u0131 projelerinizde ihtiyac\u0131n\u0131z olan dinamik ve g\u00fc\u00e7l\u00fc hesaplamalar\u0131n anahtar\u0131d\u0131r. Bu kapsaml\u0131 rehberle DAX&#039;\u0131 s\u0131f\u0131rdan \u00f6\u011frenin ve raporlar\u0131n\u0131z\u0131 d\u00f6n\u00fc\u015ft\u00fcrmeye ba\u015flay\u0131n!\" \/>\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\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Power BI&#039;da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu\" \/>\n<meta property=\"og:description\" content=\"Power BI&#039;da veri analizini bir \u00fcst seviyeye ta\u015f\u0131mak m\u0131 istiyorsunuz? DAX fonksiyonlar\u0131, i\u015f zekas\u0131 projelerinizde ihtiyac\u0131n\u0131z olan dinamik ve g\u00fc\u00e7l\u00fc hesaplamalar\u0131n anahtar\u0131d\u0131r. Bu kapsaml\u0131 rehberle DAX&#039;\u0131 s\u0131f\u0131rdan \u00f6\u011frenin ve raporlar\u0131n\u0131z\u0131 d\u00f6n\u00fc\u015ft\u00fcrmeye ba\u015flay\u0131n!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-10T18:31:29+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=\"20 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Power BI&#8217;da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu\",\"datePublished\":\"2025-10-10T18:31:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/\"},\"wordCount\":3768,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/\",\"name\":\"Power BI'da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-10T18:31:29+00:00\",\"description\":\"Power BI'da veri analizini bir \u00fcst seviyeye ta\u015f\u0131mak m\u0131 istiyorsunuz? DAX fonksiyonlar\u0131, i\u015f zekas\u0131 projelerinizde ihtiyac\u0131n\u0131z olan dinamik ve g\u00fc\u00e7l\u00fc hesaplamalar\u0131n anahtar\u0131d\u0131r. Bu kapsaml\u0131 rehberle DAX'\u0131 s\u0131f\u0131rdan \u00f6\u011frenin ve raporlar\u0131n\u0131z\u0131 d\u00f6n\u00fc\u015ft\u00fcrmeye ba\u015flay\u0131n!\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Power BI&#8217;da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu\"}]},{\"@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":"Power BI'da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu","description":"Power BI'da veri analizini bir \u00fcst seviyeye ta\u015f\u0131mak m\u0131 istiyorsunuz? DAX fonksiyonlar\u0131, i\u015f zekas\u0131 projelerinizde ihtiyac\u0131n\u0131z olan dinamik ve g\u00fc\u00e7l\u00fc hesaplamalar\u0131n anahtar\u0131d\u0131r. Bu kapsaml\u0131 rehberle DAX'\u0131 s\u0131f\u0131rdan \u00f6\u011frenin ve raporlar\u0131n\u0131z\u0131 d\u00f6n\u00fc\u015ft\u00fcrmeye ba\u015flay\u0131n!","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\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/","og_locale":"tr_TR","og_type":"article","og_title":"Power BI'da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu","og_description":"Power BI'da veri analizini bir \u00fcst seviyeye ta\u015f\u0131mak m\u0131 istiyorsunuz? DAX fonksiyonlar\u0131, i\u015f zekas\u0131 projelerinizde ihtiyac\u0131n\u0131z olan dinamik ve g\u00fc\u00e7l\u00fc hesaplamalar\u0131n anahtar\u0131d\u0131r. Bu kapsaml\u0131 rehberle DAX'\u0131 s\u0131f\u0131rdan \u00f6\u011frenin ve raporlar\u0131n\u0131z\u0131 d\u00f6n\u00fc\u015ft\u00fcrmeye ba\u015flay\u0131n!","og_url":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-10T18:31:29+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"20 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Power BI&#8217;da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu","datePublished":"2025-10-10T18:31:29+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/"},"wordCount":3768,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/","url":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/","name":"Power BI'da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-10T18:31:29+00:00","description":"Power BI'da veri analizini bir \u00fcst seviyeye ta\u015f\u0131mak m\u0131 istiyorsunuz? DAX fonksiyonlar\u0131, i\u015f zekas\u0131 projelerinizde ihtiyac\u0131n\u0131z olan dinamik ve g\u00fc\u00e7l\u00fc hesaplamalar\u0131n anahtar\u0131d\u0131r. Bu kapsaml\u0131 rehberle DAX'\u0131 s\u0131f\u0131rdan \u00f6\u011frenin ve raporlar\u0131n\u0131z\u0131 d\u00f6n\u00fc\u015ft\u00fcrmeye ba\u015flay\u0131n!","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/power-bida-dax-fonksiyonlarini-anlama-kilavuzu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Power BI&#8217;da DAX Fonksiyonlar\u0131n\u0131 Anlama K\u0131lavuzu"}]},{"@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\/31518","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=31518"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/31518\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=31518"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=31518"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=31518"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}