Power BI

Power BI DAX Nedir? Formüller ve Kullanım Alanları

DAX, Power BI veri modelinde ölçü, hesaplanmış sütun ve tablo üretir. Filtre bağlamını kullanarak satış, ortalama ve dönemsel analizleri dinamik biçimde hesaplar.

Veri Kampüsü Editörlüğü · 4 dk okuma
Satış grafikleri ve veri tablosu bulunan bir analiz ekranının dizüstü bilgisayarda görüntülenmesi
Bu yazıda neler var?
  1. DAX Nedir ve Power BI’da Ne İşe Yarar?
  2. DAX’ta Filtre Bağlamı ve Satır Bağlamı
  3. Ölçü, Hesaplanmış Sütun ve Hesaplanmış Tablo
  4. Temel DAX Formülleri Nasıl Yazılır?
  5. DAX ile Power Query Arasındaki Fark
  6. DAX Öğrenirken Sık Yapılan Hatalar

Power BI DAX nedir? DAX, veri modelinden hesaplama üretmek için kullanılan formül dilidir. Örneğin Toplam Satış = SUM(Satislar[Tutar]) ölçüsü, rapordaki ürün, tarih veya bölge filtresine göre yeniden hesaplanır. DAX ayrıca hesaplanmış sütunlar ve hesaplanmış tablolar oluşturur.

DAX Nedir ve Power BI’da Ne İşe Yarar?

DAX, “Data Analysis Expressions” ifadesinin kısaltmasıdır. Power BI içindeki tablo, sütun ve ilişkileri kullanarak yeni hesaplamalar üretir. Excel formüllerine benzer bir yazımı vardır; ancak rapor filtrelerini ve veri modelinin yapısını da hesaba katar.

Bir ölçü, rapor görselinin bulunduğu bağlama göre sonuç verir. Ürün filtresini değiştirdiğinizde satış toplamı da değişir. Aynı ölçüyü bölge, tarih veya kategori kırılımında kullanabilirsiniz.

DAX ile satış toplamı, sipariş başına ortalama ve büyüme oranı gibi göstergeler oluşturulur. Hesaplamanın doğru çalışması için tablo adlarını, sütun türlerini ve model ilişkilerini kontrol edin. DAX, raporun veri görselleştirme aşamasındaki sayısal sonuçları üretir.

DAX’ta Filtre Bağlamı ve Satır Bağlamı

Filtre bağlamı, ölçünün hangi kayıtlar üzerinde hesaplandığını belirler. Dilimleyici, sayfa filtresi, görseldeki satır ve sütunlar bu bağlama katkı sağlar. Bu nedenle aynı ölçü, farklı görsellerde farklı değerler gösterebilir.

Satır bağlamı, formülün belirli bir kayıt üzerinde çalışmasını sağlar. Hesaplanmış sütunlar oluşturulurken her satır ayrı değerlendirilir. Satış Yılı = YEAR(Satislar[Tarih]) ifadesi, her satış kaydındaki tarihten yıl bilgisini çıkarır.

Tablolar arasındaki ilişki, filtrelerin model içinde nasıl ilerleyeceğini belirler. Ürünler tablosundaki bir ürün seçimi, ürün anahtarı üzerinden Satislar tablosundaki kayıtları sınırlar. Ölçünün beklenmeyen sonuç vermesi durumunda ilişki yönünü ve anahtar alanlarını inceleyin.

İpucu: Bir ölçüyü test ederken önce kart görselinde, ardından ürün ve bölge kırılımında deneyin. Böylece filtre bağlamının sonucu nasıl değiştirdiğini görebilirsiniz.

Ölçü, Hesaplanmış Sütun ve Hesaplanmış Tablo

DAX’ta üç temel bileşen kullanılır: ölçü, hesaplanmış sütun ve hesaplanmış tablo. Ölçü sonucu rapor sorgulanırken üretir. Hesaplanmış sütun ve hesaplanmış tablo ise model yenilendiğinde hesaplanır ve modelde saklanır.

BileşenHesaplama zamanıUygun kullanım
ÖlçüRapor sorgulanırkenFiltreye göre satış toplamı
Hesaplanmış sütunModel yenilenirkenHer satıra yıl veya kategori ekleme
Hesaplanmış tabloModel yenilenirkenDAX ifadesiyle yeni tablo üretme

Filtreye göre değişen toplamları ölçü olarak tanımlayın. Sütunları, satır başına değer gerektiğinde veya kategorileri sıralamak istediğinizde kullanın. Hesaplanmış tabloları, model içinde ayrı bir veri kümesine ihtiyaç duyduğunuz durumlarda tercih edin.

Temel DAX Formülleri Nasıl Yazılır?

Aşağıdaki ölçü, Satislar tablosundaki Tutar sütununu toplar. Ölçünün adı eşittir işaretinin solunda, DAX ifadesi sağında bulunur. Tablo veya sütun adınız farklıysa formülü modelinizdeki adlara göre düzenleyin.

Satış tablosu ve grafiklerin bulunduğu dizüstü bilgisayarda DAX formülü hazırlayan eller
DAX ölçüleri satışları toplar, ortalamaları hesaplar ve yıllara göre gruplar.

Toplam Satış = SUM(Satislar[Tutar])

Sipariş başına ortalama tutarı hesaplamak için toplam satışı, tekrarsız sipariş numarası sayısına bölün. DIVIDE işlevi, paydanın sıfır olduğu durumlarda bölme işlemini güvenli biçimde yönetir.

Ortalama Sipariş Tutarı = DIVIDE([Toplam Satış], DISTINCTCOUNT(Satislar[SiparisNo]))

Satır düzeyinde yıl bilgisi üretmek için hesaplanmış sütun ekleyin: Satış Yılı = YEAR(Satislar[Tarih]). Bu sütun her satış kaydına bir yıl değeri yazar. Rapor filtresine göre değişen toplam ve ortalamaları ölçü olarak tanımlayın.

DAX ile Power Query Arasındaki Fark

Power Query, veriyi modele almadan önce içe aktarma, temizleme ve dönüştürme işlemlerini yönetir. Power Query içinde M dili kullanılır. DAX ise modele yüklenen tablolardan ölçü, hesaplanmış sütun ve hesaplanmış tablo üretir.

ÖzellikPower QueryDAX
Ana görevVeriyi alma ve dönüştürmeModel üzerinde hesaplama yapma
Kullanılan dilMDAX
ÖrnekSütun türünü değiştirmeFiltreye göre satış ölçüsü

Boş satırları temizlemek, sütun türünü değiştirmek veya kaynakları birleştirmek için Power Query kullanın. Seçilen bölgeye göre güncellenen toplam satış için DAX ölçüsü yazın. Veritabanından veri çekme görevinde SQL kullanılabilir; SQL ile DAX farklı aşamalara hizmet eder.

DAX Öğrenirken Sık Yapılan Hatalar

İlk ölçülerinizi yazarken önce göstergenin tanımını belirleyin. Ardından doğru tabloyu, sütunu ve ilişkiyi seçin. SUM, COUNTROWS ve DIVIDE işlevleri temel rapor hesaplamaları için sık kullanılan başlangıç seçenekleridir.

  • Ölçü yerine hesaplanmış sütun kullanmak: Filtreye göre değişen toplamlar için ölçü oluşturun.
  • Satır sayısını sipariş sayısı sanmak: Sipariş adedinde SiparisNo alanını DISTINCTCOUNT ile sayın.
  • Model ilişkisini kontrol etmemek: Ürün ve satış tablolarındaki anahtar alanlarını inceleyin.
  • Payda sıfırını hesaba katmamak: Bölme işlemlerinde DIVIDE kullanın.
  • Toplam satırını satır toplamlarıyla eşitlemek: Ölçü, toplam bağlamında ifadeyi yeniden değerlendirir.

Excel formüllerine aşina olmanız bazı işlevleri tanımanızı sağlar. DAX sonuçlarını doğru yorumlamak için satır bağlamı ile filtre bağlamını ayrı düşünün. Veri analizi sürecinde hesaplama tanımını yazılı hâle getirmek, ölçü seçimlerini denetlemeyi kolaylaştırır.

İpucu: Formülü kaydetmeden önce tablo ve sütun adlarını otomatik tamamlama listesinden seçin. Bu yöntem yazım hatalarını azaltır.

Sık sorulan sorular

DAX kullanmak için SQL bilmek gerekir mi?
Hayır, DAX yazmak için SQL bilmek zorunlu değildir. Power BI’da veri modeli oluşturup doğrudan ölçü yazabilirsiniz. Tablo, sütun, anahtar ve ilişki kavramlarını bilmeniz yeterli bir başlangıç sağlar. SQL ise veritabanından veri çekme ve kaynak yapısını inceleme süreçlerinde kullanılır.
DAX formülleri Power BI dışında çalışır mı?
Evet. DAX, Excel’in Veri Modeli ve Power Pivot özelliklerinde, ayrıca Analysis Services tabular modellerinde de kullanılır. Formülün çalışması için ilgili ortamda uyumlu bir model bulunmalıdır. Başka ortama taşıma sırasında tablo adlarını, sütun adlarını ve ilişkileri yeniden kontrol edin.
DAX ölçüsü neden iki görselde farklı sonuç verir?
Ölçü, bulunduğu görselin filtre bağlamında hesaplanır. Ürün adı satıra eklendiğinde ölçü ürün başına yeniden değerlendirilir. Bölge filtresi de hesaplanan kayıt kümesini değiştirir. Karşılaştırma yaparken görsel filtrelerini, dilimleyici seçimlerini ve tablo ilişkilerini birlikte inceleyin.
Ölçü ile hesaplanmış sütun arasındaki temel fark nedir?
Ölçü, rapor sorgulanırken görselin bağlamına göre sonuç üretir. Hesaplanmış sütun, model yenilenirken her satır için değer oluşturur ve bu değeri modelde saklar. Filtreye göre değişen toplamlar için ölçü; satır düzeyinde yıl veya kategori bilgisi için hesaplanmış sütun kullanın.

Kaynaklar

  1. Learn DAX basics in Power BI Desktop - Power BI | Microsoft Learn