Professional Documents
Culture Documents
Dax PDF
Dax PDF
Veri Çözümleme İfadeleri (DAX); Analysis Services, Power BI Desktop ve Excel’de PowerPivot içinde kullanılan bir
formül ifade dilidir. DAX formülleri, tablosal veri modellerindeki ilişkili tablo ve sütunlarda bulunan veriler üzerinde
gelişmiş hesaplamalar ve sorgulamalar gerçekleştirmek için kullanılan işlevleri, işleçleri ve değerleri içerir.
Bu makalede yalnızca en önemli DAX kavramlarına temel bir giriş yapılmaktadır. DAX'ın, kendisini kullanan ürünler
açısından özellikleri ele alınmaktadır. Bazı işlevler belirli ürünler veya kullanım örnekleri için geçerli olmayabilir.
Ürününüzde DAX’ın uygulanma biçimini açıklayan belgeleri inceleyin.
Hesaplamalar
DAX hesaplama formülleri ölçülerde, hesaplanmış sütunlarda, hesaplanmış tablolarda ve satır filtrelerinde kullanılır.
Ölçüler
Ölçüler, sonuçların bağlama göre değiştiği dinamik hesaplama formülleridir. Ölçüler, birden çok özniteliği
kullanarak model verilerinin birleştirilmesini ve filtrelenmesini destekleyen Power BI raporu veya Excel PivotTable
ya da PivotChart gibi raporlama uygulamalarında kullanılır. Ölçüler, model tasarımcısındaki DAX formül çubuğu
kullanılarak oluşturulur.
Bir ölçüdeki formül, COUNT veya SUM gibi Otomatik Toplam özelliği ile otomatik olarak oluşturulmuş olan
standart toplama işlevlerini kullanabilir veya isterseniz DAX formül çubuğunu kullanarak kendi formülünüzü
tanımlayabilirsiniz. Adlandırılan ölçüler, diğer ölçülerde bağımsız değişken olarak kullanılabilir.
Formül çubuğunda, ölçü için formül tanımladığınızda Araç ipucu özelliği, geçerli bağlamdaki toplama yönelik
sonuçların önizlemesini gösterir ancak bunun dışında sonuçlar herhangi bir yerde hemen çıkışa gönderilmez.
Hesaplamanın (filtrelenmiş) sonuçlarının hemen gösterilmemesinin nedeni, ölçü sonucunun bağlam olmadan
belirlenememesidir. Ölçünün değerlendirilebilmesi için her hücreyle ilgili verilerin alınması ve daha sonra ifadenin
her hücreye göre değerlendirmesi için gerekli olan bağlamı sağlayabilecek bir raporlama istemci uygulaması
gerekir. Bu istemci Excel PivotTable veya PivotChart, Power BI raporu veya SQL Server Management Studio (SSMS)
içindeki bir DAX sorgusunda yer alan tablo ifadesi olabilir.
İstemciden bağımsız olarak sonuçlardaki her hücre için ayrı bir sorgu çalıştırılır. Başka bir deyişle, PivotTable'ın satır
ve sütun üst bilgilerinin her birleşimi veya Power BI raporundaki her dilimleyici ve filtre seçimi, ölçümün
hesaplanması için kullanılan ayrı bir veri alt kümesi oluşturur. Örneğin, şu çok basit ölçü formülünü inceleyelim:
Kullanıcı, TotalSales (Toplam Satışlar) ölçüsünü PivotTable içindeki Değerler penceresine, Product (Ürün)
tablosundaki Product Category (Ürün Kategorisi) sütununu da Filtreler penceresine yerleştirirse her ürün kategorisi
için toplam Sales Amount (Satış Tutarı) hesaplanır ve görüntülenir.
Hesaplanmış sütun ve satır filtrelerinden farklı olarak ölçü söz diziminde formülden önce ölçünün adı yazılır.
Yukarıdaki örnekte formülden önce Total Sales (Toplam Satışlar) adı görünmektedir. Oluşturduğunuz ölçünün adı
ve tanımı, raporlama istemci uygulamasının Alan Listesinde görünür ve perspektiflere ve rollere bağlı olarak
modelin tüm kullanıcılarına sunulur.
Daha fazla bilgi edinmek için şu makalelere bakın:
Power BI Desktop’taki ölçümler
Analysis Services'de ölçüler
Power Pivot'ta ölçüler
Hesaplanmış sütunlar
Hesaplanmış sütun, mevcut bir tabloya (model tasarımcısında) eklediğiniz ve değerlerini tanımlayan bir DAX
formülü oluşturduğunuz sütundur. Hesaplanmış sütun, veri modelindeki bir tabloda oluşturulduğundan verileri
yalnızca ilişkisel bir veri kaynağından DirectQuery modunu kullanarak alan modellerde desteklenmez.
Hesaplanmış sütunda geçerli bir DAX formülü bulunduğunda formül girildiği anda her satırın değeri hesaplanır. Bu
değerler daha sonra bellek içi veri modelinde depolanır. Örneğin, bir Tarih tablosunda formül çubuğuna şu formül
girildiğinde:
Calendar Year (Takvim Yılı) sütunundaki (aynı Tarih tablosundan) değerler alınıp bir boşluk ve büyük Q harfi
eklendikten sonra Calendar Quarter (Takvim Üç Aylık Dönemi) sütunundaki (aynı Tarih tablosundan) değerler
eklenerek tablodaki her satır için değerler hesaplanır. Hesaplanmış sütundaki her satırın sonucu anında hesaplanır
ve görüntülenir, örneğin: 2017 Q1 . Sütun değerleri yalnızca tablonun veya ilgili tablolardan birinin işlenmesi
(yenilenmesi) veya bir Power BI Desktop dosyasının kapatılıp yeniden açılması durumunda olduğu gibi modelin
bellekten çıkarılıp yeniden yüklenmesi durumunda yeniden hesaplanır.
Daha fazla bilgi edinmek için şu makalelere bakın:
Power BI Desktop'ta hesaplanmış sütunlar
Analysis Services'de hesaplanmış sütunlar
Power Pivot'ta hesaplanmış sütunlar.
Hesaplanan tablolar
Hesaplanan tablo, bir DAX sorgusuna veya formül ifadesine dayanan ve aynı modeldeki diğer tabloların tümünden
veya bir bölümünden türetilen hesaplanmış bir nesnedir. Veri kaynağını sorgulayıp alınan değerleri yeni tablonuzun
sütunlarına yüklemek yerine bu değerleri DAX formülüyle tanımlarsınız.
Hesaplanan tablolar, rol yapan boyut için yararlı olabilir. Örnek olarak, yabancı anahtar ilişkisine bağlı olarak
OrderDate, ShipDate veya DueDate gibi bir Date (Tarih) tablosu verilebilir. ShipDate için açık olarak bir hesaplanan
tablo oluşturduğunuzda sorgular için kullanılabilen ve tam olarak diğer tablolar gibi çalışan tek başına bir tablo
elde etmiş olursunuz. Hesaplanan tablolar, diğer tablolardan faydalanarak bir filtrelenmiş satır kümesi veya sütun
alt kümesi ya da üst kümesi yapılandırırken de yararlıdır. Bu sayede özgün tabloyu değiştirmeden bu tablonun
belirli senaryolara uygun çeşitlemelerini oluşturabilirsiniz.
Hesaplanan tablolar, diğer tablolarla ilişki oluşturmayı destekler. Hesaplanan tablonuzun sütunlarında veri türleri ve
biçimlendirme özellikleri mevcuttur ve bu sütunlar bir veri kategorisine ait olabilir. Hesaplanan tablolar, diğer
tablolar gibi adlandırılabilir, gösterilebilir veya gizlenebilir. Hesaplanan tablolar yalnızca veri çektiği tablonun
yenilenmesi veya güncelleştirilmesi durumunda yeniden hesaplanır.
Daha fazla bilgi edinmek için şu makalelere bakın:
Power BI Desktop’ta hesaplanan tablolar
Analysis Services'de hesaplanan tablolar.
Satır filtreleri (Satır düzeyi güvenlik)
Satır düzeyi güvenlik olarak da bilinen satır filtrelerinde bir DAX formülünün Boole TRUE/FALSE koşulu olarak
değerlendirilmesi ve belirli bir rolün üyeleri tarafından yapılan sorguların sonucunda hangi satırların
döndürülebileceğinin bu şekilde tanımlanması gerekir. Örneğin Satış rolünün üyeleri için Customers (Müşteriler)
tablosunda şu DAX formülü kullanılmıştır:
=Customers[Country] = "USA"
Satış rolünün üyeleri yalnızca ABD'deki müşterilerin verilerini görüntüleyebilir ve SUM gibi toplama işlemleri
yalnızca ABD'deki müşterilerle ilgili sonuçlar döndürür. Satır filtreleri Excel’de Power Pivot içinde kullanılamaz.
DAX formülü kullanarak bir satır filtresi tanımladığınızda izin verilen bir satır kümesi oluşturmuş olursunuz. Bu
işlem diğer satırlara erişimi engellemez, yalnızca bu satırların izin verilen satır kümesi kapsamında
döndürülmemesini sağlar. Diğer roller, DAX formülü ile hariç tutulan satırlara erişime izin verebilir. Kullanıcının
başka bir rolün üyesi olması ve bu rolün satır filtrelerinin belirli bir satır kümesine erişime izin vermesi durumunda
kullanıcı bu satırla ilgili verileri görüntüleyebilir.
Satır filtreleri, belirtilen satırların yanı sıra ilişkili satırlara da uygulanır. Bir tabloda birden çok ilişki olduğunda
filtreler, etkin olan ilişki için güvenlik sağlar. Satır filtreleri, ilişkili tablolar için tanımlanmış olan diğer satır
filtreleriyle kesişir.
Daha fazla bilgi edinmek için şu makalelere bakın:
Power BI ile satır düzeyinde güvenlik (RLS)
Analysis Services'de satır filtreleri
Sorgular
DAX sorguları, SQL Server Management Studio’nun (SSMS) yanı sıra DAX Studio (daxstudio.org) gibi açık kaynak
araçlarda oluşturulabilir ve çalıştırılabilir. DAX sorguları, yalnızca tablosal veri modellerinde oluşturulabilen DAX
hesaplama formüllerinden farklı olarak Analysis Services çok boyutlu modelleri ile de çalıştırılabilir. DAX sorgusu
yazmak, Çok Boyutlu Veri İfadeleri (MDX) sorgularına kıyasla çoğunlukla daha kolaydır ve daha verimlidir.
DAX sorgusu, T-SQL dilindeki SELECT deyimine benzer bir deyimdir. DAX sorgusunun en temel türü, evaluate
deyimidir. Örneğin,
EVALUATE
( FILTER ( 'DimProduct', [SafetyStockLevel] < 200 ) )
ORDER BY [EnglishProductName] ASC
SafetyStockLevel değeri 200'ün altında olan ürünlerin, EnglishProductName ölçütüne göre artan sırada listelendiği
bir Sonuçlar tablosu döndürür.
Sorgu kapsamında ölçü de oluşturabilirsiniz. Ölçüler yalnızca sorgunun süresi boyunca kalıcı olur. Daha fazla bilgi
edinmek için bkz. DAX sorguları.
Formüller
DAX formülleri, hesaplanmış sütun ve ölçülerde hesaplama oluşturmak ve satır düzeyi filtrelerle verilerinizin
güvenliğini sağlamak için gereklidir. Hesaplanmış sütunlar ve ölçüler için formül oluştururken model tasarımcısı
penceresinin üst kısmındaki formül çubuğunu veya DAX Editor'ı kullanırsınız. Satır filtresi formülü oluşturmak için
Rol Yöneticisi iletişim kutusunu kullanırsınız. Bu bölümdeki bilgiler, DAX formülleriyle ilgili temel bilgileri
anlamanıza yardımcı olma amacını taşımaktadır.
Formüllerle ilgili temel bilgiler
DAX formülleri çok basit veya oldukça karmaşık olabilir. Aşağıdaki tabloda, hesaplanmış sütun içinde
kullanılabilecek basit formüllerle ilgili bazı örnekler gösterilmiştir.
Formül Açıklama
Hem basit hem de karmaşık formül oluşturmak için izlemeniz gereken adımlar aynıdır:
1. Her formül eşittir işaretiyle (=) başlamalıdır.
2. İşlev adı yazabilir veya seçebilir ya da ifade yazabilirsiniz.
3. İstediğiniz işlevin veya adın ilk birkaç harfini yazdığınızda Otomatik Tamamlama özelliği, kullanılabilir
işlevlerin, tabloların ve sütunların listesini görüntüler. Otomatik Tamamlama listesindeki bir öğeyi formüle
eklemek için SEKME tuşuna basın.
Fx düğmesine tıkladığınızda da kullanılabilir işlevlerin bir listesi görüntülenir. Açılan listedeki işlevlerden
birini seçmek için ok tuşlarını kullanarak ilgili işlevi vurgulayın ve Tamam 'a tıklayarak formüle ekleyin.
4. İşlevin bağımsız değişkenlerini olası tablo ve sütun değerlerinin görüntülendiği açılan listeden seçebilir veya
kendiniz yazabilirsiniz.
5. Söz dizimi hatalarını denetleyin. Tüm ayraçların kapatıldığından ve sütun, tablo ile değer başvurularının
doğru olduğundan emin olun.
6. Formülü kabul etmek için ENTER tuşuna basın.
NOTE
Hesaplanmış sütuna bir formül girdiğinizde ve bu formül doğrulandığında, sütunda ilgili değerler görüntülenir. Ölçü içinde
ENTER tuşuna basarsanız ölçü tanımı tabloya kaydedilir. Formülün geçersiz olması durumunda bir hata görüntülenir.
Bu örnekte Days in Current Quar ter (Geçerli Çeyrek İçindeki Gün Sayısı) adlı ölçüde yer alan formülü
inceleyeceğiz:
Bu ölçü, tamamlanmamış bir dönemle ondan önceki dönem arasında bir karşılaştırma oranı oluşturmak için
kullanılır. Formülün, geçen sürenin oranını hesaba katması ve bunu bir önceki dönemdeki aynı oranla
karşılaştırması gerekir. Bu durumda [Geçerli Çeyreğin Başından Bugüne Geçen Gün Sayısı]/[Geçerli Çeyrekteki Gün
Sayısı], geçerli dönemde geçen oranı verir.
Bu formülde aşağıdaki öğeler kullanılmıştır:
F O RM ÜL Ö ĞESI A Ç IK L A M A
'Date' Date (Tarih) tablosunu belirtir. Tablolar tek tırnak içine alınır.
İşlevler
İşlev, bir ifadenin içinde yer alan adlandırılmış formüldür. İşlevlerin çoğunun giriş olarak parametre olarak da
bilinen gerekli ve isteğe bağlı bağımsız değişkenleri vardır. İşlev yürütüldüğünde bir değer döndürülür. DAX
işlevleriyle tarih ve saatleri kullanarak hesaplamalar yapabilir, koşullu değerler oluşturabilir, dizelerle çalışabilir,
ilişkilere bağlı aramalar yapabilir ve bir tablo üzerinde yineleme yaparak özyinelemeli hesaplamalar
gerçekleştirebilirsiniz. Excel formüllerini kullanıyorsanız bu işlevlerin çoğu tanıdık gelecektir ancak DAX formülleri
şu önemli farklara sahiptir:
Bir DAX işlevi, her zaman sütunun veya tablonun tamamına başvurur. Bir tablo veya sütundaki belirli
değerleri kullanmak istiyorsanız formüle filtre ekleyebilirsiniz.
Hesaplamaları satır bazında özelleştirmeniz gerekiyorsa DAX, bağlama göre değişiklik gösteren
hesaplamalar gerçekleştirmek için geçerli satır değerini veya ilişkili bir değeri bir tür parametre olarak
kullanmanıza olanak sağlayan işlevler sunar. Bu işlevlerin nasıl çalıştığını anlamak için bu makaledeki
Bağlam bölümüne bakın.
DAX, değer değil, tablo döndüren birçok işlev içerir. Tablo, raporlama istemcisinde görüntülenmez ancak
diğer işlevlere giriş sağlamak için kullanılır. Örneğin, bir tabloyu alıp ardından bu tablodaki benzersiz
değerleri sayabilir veya filtrelenmiş tablolarda veya sütunlarda dinamik toplamlar hesaplayabilirsiniz.
DAX'ta bir dizi akıllı zaman gösterimi işlevi vardır. Bu işlevler, tarih aralıklarını tanımlamanıza veya seçmenize
ve bu tarihlere veya aralıklara bağlı olarak dinamik hesaplamalar gerçekleştirmenize olanak sağlar. Örneğin,
paralel dönemler için toplamları karşılaştırabilirsiniz.
Tarih ve saat işlevleri
DAX'taki tarih ve saat işlevleri, Microsoft Excel'deki tarih ve saat işlevlerine benzer. Ancak DAX işlevleri, Microsoft
SQL Server tarafından kullanılan datetime veri türlerini temel alır. Daha fazla bilgi için bkz. Tarih ve saat işlevleri.
Filtre işlevleri
DAX'taki filtre işlevleri belirli veri türlerini döndürür, ilişkili tablolarda değer arar ve ilişkili değerlere göre filtreleme
yapar. Arama işlevleri, veritabanında olduğu gibi tabloları ve ilişkileri kullanır. Filtreleme işlevleri, veri bağlamını
değiştirerek dinamik hesaplamalar oluşturmanızı sağlar. Daha fazla bilgi için bkz. Filtre işlevleri.
Bilgi işlevleri
Bilgi işlevi, bağımsız değişken olarak sağlanan hücreye veya satıra bakar ve değerin beklenen türle eşleşip
eşleşmediğini bildirir. Örneğin ISERROR işlevi, başvurduğunuz hedefte hata olması durumunda TRUE değerini
döndürür. Daha fazla bilgi için bkz. Bilgi işlevleri.
Mantıksal işlevler
Mantıksal işlevler, bir ifade üzerinde işlem gerçekleştirir ve bu ifadedeki değerlerle ilgili bilgi döndürür. Örneğin
TRUE işlevi, değerlendirdiğiniz ifadenin TRUE değeri döndürüp döndürmediğini öğrenmenizi sağlar. Daha fazla bilgi
için bkz. Mantıksal işlevler.
Matematik ve trigonometri işlevleri
DAX'taki matematik işlevleri, Excel'deki matematik ve trigonometri işlevlerine çok benzer. DAX işlevleri tarafından
kullanılan sayısal veri türlerinde bazı küçük farklar vardır. Daha fazla bilgi için bkz. Matematik ve trigonometri
işlevleri.
Diğer işlevler
Bu işlevler, diğer işlevlerin ait olduğu kategorilere girmeyen benzersiz eylemler gerçekleştirir. Daha fazla bilgi için
bkz. Diğer işlevler.
İstatistiksel işlevler
DAX, toplama işlemleri gerçekleştiren istatistiksel işlevler sağlar. Toplam ve ortalama değer elde etmeye veya en
düşük ve en yüksek değerleri bulmaya ek olarak DAX ile toplama işleminden önce sütunları filtreleyebilir veya ilgili
tablolara göre toplama işlemleri oluşturabilirsiniz. Daha fazla bilgi için bkz. İstatistiksel işlevler.
Metin işlevleri
DAX'taki metin işlevleri, Excel'deki metin işlevlerine çok benzer. Bir dizenin bir bölümünü döndürebilir, bir dize
içinde metin arayabilir veya dize değerlerini birleştirebilirsiniz. DAX ayrıca tarih, saat ve sayı biçimlerini
denetlemeye yönelik işlevler de sunar. Daha fazla bilgi için bkz. Metin işlevleri.
Akıllı zaman gösterimi işlevleri
DAX'taki akıllı zaman gösterimi işlevleri, takvimler ve tarihler ile ilgili yerleşik bilgileri kullanan hesaplamalar
oluşturmanızı sağlar. Zaman ve tarih aralıklarını toplamalar veya hesaplamalar ile birlikte kullanarak satış ve stok
gibi durumlar için karşılaştırılabilir zaman aralıklarını kapsayan anlamlı karşılaştırmalar oluşturabilirsiniz. Daha
fazla bilgi için bkz. Akıllı zaman gösterimi işlevleri (DAX).
Tablo değerli işlevler
Tabloları çıkış veya giriş olarak kullanan ya da ikisini birden yapan DAX işlevleri vardır. Bir tabloda tek bir sütun
olabileceğinden tablo değerli işlevler de giriş olarak tek bir sütun alır. Tablo değerli işlevleri kullanmayı anlamak,
DAX formüllerinden tam anlamıyla yararlanmak açısından önemlidir. DAX, aşağıdaki tablo değerli işlev türlerine
sahiptir:
Filtre işlevleri, geçerli satırla ilişkili sütun, tablo veya değerleri döndürür.
Toplama işlevleri, tablo satırları üzerindeki bir ifadenin toplamını alır.
Akıllı zaman gösterimi işlevleri, tarihlerden oluşan bir tablo döndürür veya toplama hesabı yapmak için
tarihlerden oluşan bir tablo kullanır.
Tablo işlevlerinden bazıları: FILTER, ALL, VALUES, DISTINCT, RELATEDTABLE.
Değişkenler
VAR kullanarak ifade içinde değişken oluşturabilirsiniz. VAR teknik açıdan bir işlev değil bir ifadenin sonucunu
adlandırılmış değişken olarak depolamanızı sağlayan bir anahtar sözcüktür. Bu değişkeni daha sonra diğer ölçü
ifadelerine bağımsız değişken olarak geçirebilirsiniz. Örnek:
VAR
TotalQty = SUM ( Sales[Quantity] )
Return
IF (
TotalQty > 1000,
TotalQty * 0.95,
TotalQty * 1.25
)
Bu örnekte TotalQty değeri, adlandırılmış değişken olarak diğer ifadelere geçirilebilir. Değişkenler, tablolar da dahil
olmak üzere tüm skaler veri türlerinde olabilir. DAX formüllerinizde değişkenleri kullanarak etkili sonuçlar elde
edebilirsiniz.
Veri türleri
Model içine farklı veri türlerini destekleyen birçok farklı veri kaynağından veri aktarabilirsiniz. Modele aktardığınız
veriler tablosal model veri türlerinden birine dönüştürülür. Model verileri bir hesaplamada kullanıldığında bu
veriler hesaplamanın süresi boyunca ve çıkışı olarak bir DAX veri türüne dönüştürülür. Bir DAX formülü
oluşturduğunuzda formülde kullanılan terimler otomatik olarak döndürülen değerin veri türünü belirler.
DAX şu veri türlerini destekler:
M O DEL DEK I VERI T ÜRÜ DA X’ T EK I VERI T ÜRÜ A Ç IK L A M A
Tam Sayı 64 bit (sekiz bayt) tamsayı değeri 1, 2 Ondalık basamağı olmayan sayılar.
Tamsayılar pozitif veya negatif olabilir
ancak -9.223.372.036.854.775.808 (-
2^63) ile 9.223.372.036.854.775.807
(2^63-1) arasında bir tamsayı olması
gerekir.
Ondalık Sayı 64 bit (sekiz bayt) gerçek sayı 1, 2 Gerçek sayılar ondalık basamağa sahip
olabilir. Gerçek sayılar, geniş bir değer
aralığını kapsar:
Sıfır
Tablosal veri modelleri, birçok DAX işlevinde giriş veya çıkış olarak kullanılabilen Tablo veri türünü de içerir. Örneğin
FILTER işlevi, giriş olarak bir tablo alır ve yalnızca filtre koşullarını karşılayan satırları içeren bir tabloyu çıkış olarak
verir. Tablo işlevlerini toplama işlevleriyle birlikte kullanarak dinamik olarak tanımlanan veri kümelerinde karmaşık
hesaplamalar yapabilirsiniz.
Veri türleri otomatik olarak ayarlanır ancak veri türlerini ve özellikle DAX formüllerinde nasıl kullanıldıklarını
anlamak önemlidir. Örneğin, formüllerdeki hataların veya beklenmeyen sonuçların nedeni genellikle bağımsız
değişkende belirtilen veri türüyle kullanılamayacak olan bir işlecin kullanılmasıdır. Örneğin = 1 & 2 formülü 12
dize sonucunu döndürür. Ancak = "1" + "2" formülü, 3 tamsayı sonucunu döndürür.
Bağlam
Bağlam, DAX formülü oluştururken anlamanız gereken önemli kavramlardan biridir. Formülün sonucu, seçilen
satıra veya hücreye göre ve ilişkili verilere göre değişiklik gösterdiğinden bağlam, dinamik analiz gerçekleştirmenizi
sağlar. Bağlamı anlamak ve etkili bir şekilde kullanmak, yüksek performanslı ve dinamik analiz gerçekleştirmenin
yanı sıra formüllerdeki sorunları giderme açısından kritik öneme sahiptir.
Tablosal modellerdeki formüller, diğer tasarım öğelerine bağlı olarak farklı bir bağlamda değerlendirilebilir:
Bir PivotTable'a veya rapora uygulanan filtreler
Formül içinde tanımlanan filtreler
Formül içinde özel işlev kullanılarak belirtilen ilişkiler
Bağlamın farklı türleri vardır: satır bağlamı, sorgu bağlamı ve filtre bağlamı.
Satır bağlamı
Satır bağlamı, "geçerli satır" olarak düşünülebilir. Hesaplanmış sütunda bir formül oluşturursanız söz konusu
formülün satır bağlamı geçerli satırın tüm sütunlarındaki değerleri içerir. Tablonun başka bir tabloyla
ilişkilendirilmiş olması durumunda bağlam, diğer tablodaki geçerli satırla ilişkili olan değerleri de içerir.
Örneğin =[Freight] + [Tax] formülüyle aynı tablonun "Freight" ve "Tax" adlı sütunlarındaki değerleri toplayan bir
hesaplanmış sütun oluşturduğunuzu düşünün. Bu formül otomatik olarak yalnızca belirtilen sütunların geçerli
satırındaki değerleri alır.
Satır bağlamı ayrıca hesaplanmış sütun içinde DAX formülleri kullanılarak tanımlanan ilişkiler dahil olmak üzere
tablolar arasında tanımlanmış ilişkileri izler ve ilişkili tablolarda geçerli satırla ilişkili satırları belirler.
Örneğin, aşağıdaki formülde siparişin gönderildiği bölgeye göre ilişkili tablodan vergi değerini almak için RELATED
işlevi kullanılmıştır. Vergi değerinin belirlenmesi için geçerli tablodaki bölge değeri kullanılmış, bölge değeri ilişkili
tabloda aranmış ve sonra bu bölgeye ait vergi oranı ilişkili tablodan alınmıştır.
= [Freight] + RELATED('Region'[TaxRate])
Bu formül, Region (Bölge) tablosundan geçerli bölgeye ait vergi oranını alır ve Freight (Nakliye) sütununun
değerine ekler. DAX formüllerinde tabloları bağlayan ilişkiyi bilmeniz veya belirtmeniz gerekmez.
Birden çok satır bağlamı
DAX, bir tablo üzerinde yinelenen hesaplamalar gerçekleştirmeyi sağlayan işlevlere sahiptir. Bu işlevler, her biri
kendi satır bağlamına sahip olan birden fazla geçerli satıra sahip olabilir. Bu işlevler temelde işlemleri iç ve dış
döngü içinde yinelemenize imkan tanıyan formüller oluşturmanızı sağlar.
Örneğin modelinizde bir Products (Ürünler) tablosu bir de Sales (Satış) tablosu olduğunu düşünün. Kullanıcılar,
biden fazla ürünle ilgili işlemlerin yer aldığı satış tablosunu inceleyip her bir ürün için tek işlemde sipariş edilen en
yüksek miktarı bulmak isteyebilir.
DAX ile doğru değeri döndüren tek bir formül oluşturabilirsiniz. Kullanıcılar tabloya veri ekledikçe sonuçlar da
otomatik olarak güncelleştirilir.
=MAXX(FILTER(Sales,[ProdKey]=EARLIER([ProdKey])),Sales[OrderQty])
İşleçler
DAX dilinde yazılan formüllerde dört farklı türde hesaplama işleci kullanılır:
Değerleri karşılaştırmak ve mantıksal TRUE\FALSE değeri döndürmek için kullanılan karşılaştırma işleçleri.
Sayısal değerler döndüren aritmetik hesaplamalar gerçekleştirmek için kullanılan aritmetik işleçler.
İki veya daha fazla metin dizesini birleştirmek için kullanılan birleştirme işleçleri.
İki veya daha fazla ifadeyi birleştirerek tek bir sonuç döndüren mantıksal işleçler.
DAX formüllerinde kullanılan işleçler hakkında ayrıntılı bilgi için bkz. DAX işleçleri.
Bir formül değerlendirildiğinde model tasarımcısı öncelikle genel söz dizimini denetler, ardından da sağladığınız
sütun ve tablo adlarını geçerli bağlamdaki olası sütun ve tablo adlarıyla karşılaştırır. Adın belirsiz olması veya
sütunun ya da tablonun bulunamaması durumunda formülle ilgili bir hata döndürülür (hatanın oluştuğu
hücrelerde veri yerine #ERROR dizesi görüntülenir). Tablolara, sütunlara ve diğer nesnelere ilişkin adlandırma
gereksinimleri hakkında daha fazla bilgi için DAX söz dizimindeki Adlandırma Gereksinimleri bölümünü inceleyin.
Tablo ilişkileri
Tablolar arasında ilişki oluşturarak başka bir tabloda yer alan verilerde arama yapabilir ve ilişkili değerleri
kullanarak karmaşık hesaplamalar gerçekleştirebilirsiniz. Örneğin, bir hesaplanmış sütunu kullanarak geçerli
satıcıyla ilişkili tüm gönderim kayıtlarını inceleyebilir ve her birinin gönderim maliyetlerini toplayabilirsiniz. Ancak
çoğu durumda ilişki kurmak gerekli olmayabilir. Bir formülde LOOKUPVALUE işlevini kullanarak arama_sütunu ve
arama_değeri bağımsız değişkenleriyle belirtilen ölçütleri karşılayan satıra ait değeri sonuç_sütunAdı içinde
döndürebilirsiniz.
Birçok DAX işlevinde, başvurduğunuz sütunları bulmak ve mantıklı sonuçlar döndürmek için tablolar veya birden
fazla tablo arasında bir ilişki bulunması gerekir. Diğer işlevler, ilişkiyi tanımlamaya çalışır ancak en iyi sonuçları elde
etmek için mümkün olan durumlarda ilişki oluşturmanız gerekir. Tablosal veri modelleri, tablolar arasında birden
çok ilişki kurulmasını destekler. Kafa karışıklığı yaratmaması veya hatalı sonuçlara neden olmaması için tek seferde
yalnızca bir ilişki etkin olarak kabul edilir. Ancak gerekirse etkin ilişkiyi değiştirerek veri hesaplamalarında farklı
bağlantılara geçiş yapabilirsiniz. USERELATIONSHIP işlevi, belirli bir hesaplamada kullanılacak bir veya daha fazla
ilişkiyi belirtmek için kullanılabilir.
İlişkileri kullanırken şu formüle tasarım kurallarına dikkat edilmesi gerekir:
Tablolar bir ilişkiyle bağlandığında, anahtar olarak kullanılan iki sütunda eşleşen değerlerin olduğundan
emin olmanız gerekir. Bilgi tutarlılığı zorunlu kılınmadığından anahtar sütununda eşleşen değerler olmasa da
ilişki oluşturabilirsiniz. Bu durumda boş değerlerin veya eşleşmeyen değerlerin formül sonuçlarını
etkileyebileceğini bilmeniz gerekir.
Modelinizdeki tabloları ilişkiler kullanarak bağladığınızda formüllerin değerlendirildiği kapsamı veya
bağlamı genişletmiş olursunuz. Yeni tabloların veya yeni ilişkilerin eklenmesi ya da etkin ilişkilerde değişiklik
yapılması nedeniyle ortaya çıkan bağlam değişiklikleri, sonuçlarınızın tahmin edemeyeceğiniz şekilde
değişmesine neden olabilir. Daha fazla bilgi için bu makalenin Bağlam bölümüne bakın.
İşleme ve yenileme
İşleme ve yeniden hesaplama iki ayrı işlemdir ancak aralarında bağlantı vardır. Karmaşık formüller, çok miktarda
veri veya dış veri kaynaklarından alınan veriler içeren bir model tasarlarken bu kavramları ayrıntılı bir şekilde
anlamanız gerekir.
İşleme (yenileme) , modelin içindeki verileri dış veri kaynağından alınan yeni verilerle güncelleştirme işlemidir.
Yeniden hesaplama ise formül sonuçlarını, formüllerde ve temel alınan verilerde yapılan değişiklikleri yansıtacak
şekilde güncelleştirme işlemidir. Yeniden hesaplamanın performans üzerindeki etkileri şunlardır:
Hesaplanmış sütundaki değerler, model içinde hesaplanır ve depolanır. Hesaplanmış sütundaki değerleri
güncelleştirmek için şu üç işleme komutundan birini kullanarak modeli işlemeniz gerekir: İşlem Tamam,
İşlem Veriler veya İşlem Yeniden Hesapla. Formülü her değiştirdiğinizde sütunun tamamı için yeniden
hesaplama işlemi gerçekleştirilmelidir.
Ölçülerle hesaplanan değerler, kullanıcı ilgili ölçüyü bir PivotTable’a eklediğinde veya bir raporu açtığında
dinamik olarak değerlendirilir. Kullanıcı bağlamı değiştirdiğinde ölçünün döndürdüğü değerler de değişir.
Ölçünün sonuçları her zaman bellek içi önbellekteki en güncel verileri yansıtır.
Yeniden hesaplama sonucu farklı bir değer döndürmedikçe ve bu nedenle satır, rol üyeleri tarafından sorgulanabilir
veya sorgulanamaz hale gelmedikçe, işleme ve yeniden hesaplama, satır filtresi formüllerini etkilemez.
Sorun giderme
Formül tanımlarken hata alıyorsanız formülde söz dizimi hatası, anlamsal hata veya hesaplama hatası olabilir.
Söz dizimi hataları, çözmesi en kolay olan hatalardır. Bu hatalar genellikle bir ayracın veya virgülün eksik
olmasından kaynaklanır. .
Diğer bir hata türünde ise söz dizimi doğruyken başvurulan değer veya sütun, formül bağlamında anlamlı değildir.
Bu tür anlamsal hataların ve hesaplama hatalarının nedenleri aşağıdakilerden biri olabilir:
Formül, mevcut olmayan bir sütuna, tabloya veya işleve başvuruyor olabilir.
Formül doğru gibi görünse de veri altyapısı verileri getirirken tür uyuşmazlığı nedeniyle hata bildirebilir.
Formülün işleve geçirdiği bağımsız değişkenlerin sayısı veya türü hatalı olabilir.
Formül, hata içeren farklı bir sütuna başvuruyor olabilir ve bu nedenle değerleri geçersiz olabilir.
Formül, işlenmemiş, başka bir deyişle meta veriler içeren ancak hesaplamada kullanılacak gerçek veri içermeyen
bir sütuna başvuruyor olabilir.
İlk dört örnekte DAX, geçersiz formül içeren sütunun tamamını işaret eder. Son örnekte ise DAX, işlenmemiş
durumda olduğunu belirtmek için sütunun rengini griye çevirir.
Uygulamalar ve araçlar
Power BI Desktop
Power BI Desktop, ücretsiz bir veri modelleme ve raporlama uygulamasıdır. Model tasarımcısında DAX hesaplama
formülü oluşturmayı sağlayan bir DAX düzenleyicisi vardır.
Excel’de Power Pivot
Excel’de Power Pivot, DAX hesaplama formülleri oluşturmayı sağlayan bir DAX düzenleyicisine sahiptir.
Visual Studio
SQL Server Veri Araçları (SSDT), Analysis Services veri modelleri oluşturmak ve dağıtmak için kullanılan bir araçtır.
Model tasarımcısı, DAX hesaplama formülleri oluşturmayı sağlayan bir DAX düzenleyicisine sahiptir.
Analysis Services Projeleri uzantısı (VSIX), SSDT'deki Analysis Services modelleme projesi oluşturma işlevlerini
içerir. SSDT zaten yüklüyse paketleri yüklemenize gerek yoktur.
SQL Server Management Studio
SQL Server Management Studio (SSMS), Analysis Services ile birlikte çalışmak için gerekli olan temel araçlardan
biridir. SSMS içinde hem tablosal hem de çok boyutlu modelleri sorgulamak için kullanabileceğiniz bir DAX sorgu
düzenleyicisi vardır.
DAX Studio
DAX Studio; Analysis Services, Power BI Desktop ve Excel’de Power Pivot modellerinde DAX sorgusu oluşturmak ve
çalıştırmak için kullanılan bir açık kaynak araçtır.
Öğrenme kaynakları
DAX'ı, veri modellerinizi oluşturmak için kullanacağınız uygulamayla öğrenmeniz önerilir. Analysis Services, Power
BI Desktop ve Excel’de Power Pivot için DAX ile ölçü, hesaplanmış sütun ve satır filtresi oluşturma adımlarını içeren
makaleler ve öğreticiler sunulmuştur. Aşağıdaki ek kaynakları da inceleyebilirsiniz:
Videolar
Power BI Desktop'ta DAX kullanımıyla ilgili temel bilgiler
Hızlı Başlangıç: 30 Dakikada Temel DAX Kullanımını Öğrenin (Excel’de Power Pivot)
DAX Kaynak Merkezi wikisi
Alberto Ferrari ve Marco Russo tarafından yazılan Definitive Guide to DAX (Microsoft Press). Bu kapsamlı kılavuzda,
başlangıç seviyesindeki veri modelleyicilerinden BI uzmanlarına kadar herkes için temel bilgilere ve yenilikçi yüksek
performans tekniklerine yer verilmiştir.
Videolar
21.05.2020 • 2 minutes to read
Veri Çözümleme İfadeleri (DAX) ile çalışmayı öğrenmek; Power BI Desktop, Excel'de Power Pivot veya Analysis
Services platformlarında etkili veri modelleri oluşturma açısından önemlidir. Aşağıda, bu güçlü ifade dilini
kullanmaya başlamanıza yardımcı olacak videolara yer verilmiştir.
DAX 101
Bu DAX 101 videosunda Microsoft İş Ortağı Alberto Ferrari, temel DAX kavramlarını anlatıyor. Pratik ve anlaması
kolay örnekler DAX'taki ölçüler, hesaplanmış sütunlar ve temel veri modelleme ifadeleri hakkında bilgi
edineceksiniz.
Gelişmiş DAX
Bu gelişmiş DAX videosunda Microsoft İş Ortağı Alberto Ferrari; DAX teorisini, filtre ve satır bağlamını ve DAX'taki
diğer temel kavramları anlatıyor.
DAX işlevi başvurusu
26.05.2020 • 4 minutes to read
Bu işlev başvurusu, Veri Çözümleme İfadesi (DAX) formüllerinde kullanılan 200'den fazla işlevin her biri için söz
dizimi, parametreler, döndürülen değerler ve örnekler gibi ayrıntılı bilgiler içermektedir.
IMPORTANT
Tüm DAX işlevleri Power BI Desktop, Analysis Services ve Excel'de Power Pivot'un eski sürümlerinde desteklenmez veya
bulunmaz.
Örnekler
Çoğu başvuru makalesinde Excel'de Power Pivot veri modeli ile bir Excel çalışma kitabı içinde oluşturulan
formülleri ve sonuçları gösteren örnekler yer almaktadır. Veri modeli, AdventureWorksDW örnek
veritabanlarından içeri aktarılan veriler içermektedir. Örnek çalışma kitabı artık kullanılabilir durumda değildir.
Bu başvuru, belirli bir veri kaynağındaki verileri içeren veri modelleri için formül oluşturma konusunda ayrıntılı
yönergeler sağlama amacı taşımamaktadır.
Bu bölümde
Yeni DAX işlevleri: Bunlar, yeni veya büyük ölçüde güncelleştirilmiş işlevlerdir.
Tarih ve saat işlevleri (DAX): DAX'taki bu işlevler, Microsoft Excel'deki tarih ve saat işlevlerine benzer. Ancak DAX
işlevleri, Microsoft SQL Server tarafından kullanılan tarih saat veri türlerini temel alır.
Akıllı zaman gösterimi işlevleri (DAX): Bu işlevler, takvimler ve tarihler ile ilgili yerleşik bilgileri kullanan
hesaplamalar oluşturmanızı sağlar. Zaman ve tarih aralıklarını toplamalar veya hesaplamalar ile birlikte kullanarak
satış ve stok gibi durumlar için karşılaştırılabilir zaman aralıklarını kapsayan anlamlı karşılaştırmalar
oluşturabilirsiniz.
Filtre işlevleri (DAX): Bu işlevler belirli veri türlerini döndürür, ilişkili tablolarda değer arar ve ilişkili değerlere göre
filtreleme yapar. Arama işlevleri, tabloları ve aralarındaki ilişkileri kullanır. Filtreleme işlevleri, veri bağlamını
değiştirerek dinamik hesaplamalar oluşturmanızı sağlar.
Bilgi işlevleri (DAX): Bu işlevler, başka bir işleve bağımsız değişken olarak sağlanan tabloya veya sütuna bakar ve
değerin beklenen türle eşleşip eşleşmediğini bildirir. Örneğin ISERROR işlevi, başvurduğunuz hedefte hata olması
durumunda TRUE değerini döndürür.
Mantıksal işlevler (DAX): Bu işlevler, bir ifadedeki değerlerle ilgili bilgi döndürür. Örneğin TRUE işlevi,
değerlendirdiğiniz ifadenin TRUE değeri döndürüp döndürmediğini öğrenmenizi sağlar.
Matematik ve trigonometri işlevleri (DAX): DAX'taki matematik işlevleri, Excel'deki matematik ve trigonometri
işlevlerine benzer. Ancak DAX işlevleri tarafından kullanılan sayısal veri türlerinde bazı farklar vardır.
Diğer işlevler (DAX): Bu işlevler, diğer işlevlerin ait olduğu kategorilere girmeyen benzersiz eylemler gerçekleştirir.
Üst ve alt öğe işlevleri (DAX): Bu Veri Çözümleme İfadeleri (DAX) işlevleri, kullanıcıların veri modellerinde üst/alt
öğe olarak sunulan verileri yönetmesine yardımcı olur.
İstatistiksel işlevler (DAX): Bu işlevler toplama işlemi gerçekleştirir. Toplam ve ortalama değer elde etmeye veya en
düşük ve en yüksek değerleri bulmaya ek olarak DAX ile toplama işleminden önce sütunları filtreleyebilir veya ilgili
tablolara göre toplama işlemleri oluşturabilirsiniz.
Metin işlevleri (DAX): Bu işlevleri kullanarak bir dizenin bir bölümünü döndürebilir, bir dize içinde metin arayabilir
veya dize değerlerini birleştirebilirsiniz. Tarih, saat ve sayı biçimlerini denetlemeye yönelik ek işlevler de vardır.
Ayrıca bkz.
DAX Söz Dizimi Başvurusu
DAX İşleç Başvurusu
DAX Parametrelerini Adlandırma Kuralları
Yeni DAX işlevleri
8.05.2020 • 2 minutes to read
DAX, yeni özellikleri destekleyen yeni işlevlerle sürekli geliştirilmektedir. Yeni işlevler ve güncelleştirmeler, genellikle
ayda bir kez hizmete, uygulamaya ve araçlara eklenmektedir. SQL Server Analysis Services ve Excel, bir sonraki
toplu güncelleştirmede güncelleştirilir. En son yeniliklere sahip olmak için son sürümü kullandığınızdan emin olun.
İşlevler ve özellikler sürekli güncelleştiriliyor olsa da belgelerde yalnızca kullanıcılara sunulan görsel ve işlevsel
değişikliklerle ilgili güncelleştirmelere yer verilmektedir. Geçtiğimiz yıl içindeki yeni işlevler ve mevcut işlevlere
yönelik güncelleştirmeler burada gösterilmiştir.
IMPORTANT
Tüm işlevler, tüm Power BI Desktop, Analysis Services ve Excel'de Power Pivot sürümlerinde desteklenmez. Yeni ve
güncelleştirilen işlevler genellikle ilk olarak Power BI Desktop'ta sunulur.
Yeni işlevler
İŞ L EV AY
Güncelleştirilen işlevler
İŞ L EV AY
Tarih ve saat işlevleri
8.05.2020 • 3 minutes to read
Bu işlevler, tarih ve saat içeren hesaplamalar oluşturmanıza yardımcı olur. DAX'taki işlevlerin çoğu, Excel'deki
tarih ve saat işlevleriyle benzerdir. Ancak DAX işlevleri tarih saat veri türü kullanır ve bir sütundaki değerleri
bağımsız değişken olarak alabilir.
Bu kategoride
İŞ L EV A Ç IK L A M A
CALENDAR Ardışık bir tarih kümesi içeren "Date" adlı tek sütunlu bir
tablo döndürür.
CALENDARAUTO Ardışık bir tarih kümesi içeren "Date" adlı tek sütunlu bir
tablo döndürür.
HOUR 0 (12:00 A.M.) ile 23 (11:00 P.M.) arasındaki bir sayı olarak
saati döndürür.
SECOND Bir saat değerinin saniyesini 0 ile 59 arasında bir sayı olarak
döndürür.
YEARFRAC İki tarih arasındaki tam gün sayısı ile gösterilen yılın
bölümünü hesaplar.
CALENDAR
8.05.2020 • 2 minutes to read
Ardışık bir tarih kümesi içeren "Date" adlı tek sütunlu bir tablo döndürür. Tarih aralığı, belirtilen başlangıç tarihinden
itibaren belirtilen bitiş tarihine kadar olur ve bu iki tarih hariç tutulur.
Sözdizimi
CALENDAR(<start_date>, <end_date>)
Parametreler
T ERIM TA N IM
başlangıç_tarihi Bir tarih saat değeri döndüren herhangi bir DAX ifadesi.
bitiş_tarihi Bir tarih saat değeri döndüren herhangi bir DAX ifadesi.
Döndürülen değer
Ardışık bir tarih kümesi içeren "Date" adlı tek sütunlu bir tablo döndürür. Tarih aralığı, belirtilen başlangıç tarihinden
itibaren belirtilen bitiş tarihine kadar olur ve bu iki tarih hariç tutulur.
Açıklamalar
başlangıç_tarihi, bitiş_tarihi değerinden büyükse bir hata döndürülür.
Örnekler
Aşağıdaki formül, 1 Ocak 2005 ile 31 Aralık 2015 arasındaki tarihleri içeren bir tablo döndürür.
=CALENDAR (DATE (2005, 1, 1), DATE (2015, 12, 31))
Gerçek satış verilerini ve geleceğe dönük satış tahminlerini içeren bir veri modeli için. Aşağıdaki ifade, bu iki
tablodaki tarih aralığını kapsayan tarih tablosunu döndürür.
=CALENDAR (MINX (Sales, [Date]), MAXX (Forecast, [Date]))
CALENDARAUTO
8.05.2020 • 2 minutes to read
Ardışık bir tarih kümesi içeren "Date" adlı tek sütunlu bir tablo döndürür. Tarih aralığı, modeldeki verilere göre
otomatik olarak hesaplanır.
Sözdizimi
CALENDARAUTO([fiscal_year_end_month])
Parametreler
T ERIM TA N IM
Döndürülen değer
Ardışık bir tarih kümesi içeren "Date" adlı tek sütunlu bir tablo döndürür. Tarih aralığı, modeldeki verilere göre
otomatik olarak hesaplanır.
Açıklamalar
Tarih aralığı aşağıda gösterilen şekilde hesaplanır:
Modeldeki hesaplanmış sütun veya hesaplanmış tablo olmayan en erken tarih, MinDate olarak alınır.
Modeldeki hesaplanmış sütun veya hesaplanmış tablo olmayan en geç tarih, MaxDate olarak alınır.
Döndürülen tarih aralığı, MinDate ile ilişkili mali yılın başlangıç tarihi ve MaxDate ile ilişkili mali yılın bitiş
tarihi arasındaki tarihler olur.
Modelde hesaplanmış sütun veya hesaplanmış tablo içinde olmayan tarih saat değeri olmadığında bir hata
döndürülür.
Örnek
Bu örnekte veri modelindeki MinDate ve MaxDate değerleri 1 Temmuz 2010 ve 30 Haziran 2011'dir.
CALENDARAUTO() , 1 Ocak 2010 ile 31 Aralık 2011 arasındaki tüm tarihleri döndürür.
CALENDARAUTO(3) , 1 Mart 2010 ile 28 Şubat 2012 arasındaki tüm tarihleri döndürür.
DATE
8.05.2020 • 8 minutes to read
Sözdizimi
DATE(<year>, <month>, <day>)
Parametreler
T ERIM TA N IM
yıl değeri 0 ile 1899 arasındaysa son değeri elde etmek için
1900 eklenir. Aşağıdaki örneklere bakın. Not: İstenmeyen
sonuçlarla karşılaşmamak için mümkün olduğunda yıl
bağımsız değişkeni için dört basamak kullanmanız önerilir.
Örneğin 07 değeri, 1907 yıl değerini döndürür.
Döndürülen değer
Belirtilen tarihi (tarih saat ) döndürür.
Açıklamalar
DATE işlevi, bağımsız değişken olarak belirtilen tamsayıları alır ve bunlara karşılık gelen tarihi oluşturur. DATE işlevi
en çok yıl, ay ve gün değerlerinin formüller tarafından sağlandığı durumlarda kullanışlıdır. Örneğin temel alınan
veriler, tarihleri YYYYAAGG gibi tarih olarak tanınmayan bir biçimde tutuyor olabilir. DATE işlevini diğer işlevlerle
birlikte kullanarak tarihleri, tarih olarak tanınabilecek bir sayıya dönüştürebilirsiniz.
Tarihleri sayı dizisi olarak depolayan Microsoft Excel'den farklı olarak DAX'taki tarih işlevleri veri türü olarak her
zaman tarih saat döndürür. Ancak isterseniz biçimlendirme kullanarak tarihleri sayı dizisi olarak
görüntüleyebilirsiniz.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
=DATE(2009,7,8)
=DATE(08,1,2)
=DATE(1800,1,2)
=DATE(2008,1,2)
=DATE(2008,14,2)
Açıklama
ay değeri 1'den küçükse DATE işlevi belirtilen ay sayısına 1 ekleyip belirtilen yıldaki ilk aydan çıkarır. Aşağıdaki
formül 2 Eylül 2007 tarihini döndürür:
=DATE(2008,-3,2)
Açıklama
gün değeri 1'den küçükse, gün içinde belirtilen ay sayısına bir eklenir ve belirtilen ayın ilk gününden çıkarılır.
Aşağıdaki formül 16 Aralık 2007 tarihini döndürür:
=DATE(2008,1,-15)
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
DAY işlevi (DAX)
TODAY işlevi (DAX)
DATEDIFF
9.05.2020 • 2 minutes to read
Söz dizimi
DATEDIFF(<start_date>, <end_date>, <interval>)
Parametreler
T ERIM TA N IM
- SECOND
- MINUTE
- HOUR
- DAY
- WEEK
- MONTH
- QUARTER
- YEAR
Döndürülen değer
İki tarih arasındaki çapraz aralık sınırları sayısı.
Açıklamalar
başlangıç_tarihi, bitiş_tarihi değerinden büyükse bir hata döndürülür.
Örnek
TA RIH
2012-12-31 23:59:59
2013-01-01 00:00:00
Sözdizimi
DATEVALUE(date_text)
Parametreler
T ERIM TA N IM
Açıklamalar
Dönüştürme sırasında, DATEVALUE bir tarih değeri belirlemek için modelin yerel ayarını ve tarih/saat ayarlarını
kullanır. Modelin tarih/saat ayarları, tarihleri Ay/Gün/Yıl biçiminde gösteriyorsa, "1/8/2009" dizesi, 8 Ocak 2009'a
eşit bir tarih saat değerine dönüştürülür. Ancak, modelin tarih/saat ayarları tarihleri Gün/Ay/Yıl biçiminde
gösteriyorsa, aynı dize, 1 Ağustos 2009'a eşit bir tarih saat değerine dönüştürülür.
Modelin yerel ayarını ve tarih/saat ayarlarını kullanarak dönüştürme başarısız olursa, DATEVALUE diğer tarih
biçimlerini kullanmayı dener. Bu durumda, bazı satırlar bir biçim kullanılarak ve diğer satırlar farklı bir biçim
kullanılarak dönüştürülebilir. Örneğin, "5/4/2018" 4 Mayıs 2018 olarak ve "20/4/2018" 20 Nisan olarak
dönüştürülebilir.
tarih_metni bağımsız değişkeninin yıl kısmı atlanırsa, DATEVALUE işlevi bilgisayarınızın yerleşik saatindeki geçerli
yılı kullanır. tarih_metni bağımsız değişkenindeki saat bilgisi yoksayılır.
Modelin yerel ayarı ve tarih/saat ayarları, başlangıçta model oluşturulduğunda uygulama ve bilgisayar tarafından
belirlenir.
Örnek
Aşağıdaki örnek, modelin yerel ayarlarına ve tarih/saatlerin nasıl sunulduğunu gösteren ayarlara bağlı olarak farklı
bir tarih saat değeri döndürür.
Günün aydan önce geldiği tarih/saat ayarlarında örnek, 8 Ocak 2009'a karşılık gelen bir tarih saat değeri
döndürür.
Ayın günden önce geldiği tarih/saat ayarlarında örnek, 1 Ağustos 2009'a karşılık gelen bir tarih saat değeri
döndürür.
=DATEVALUE("8/1/2009")
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
DAY
8.05.2020 • 3 minutes to read
Sözdizimi
DAY(<date>)
Parametreler
T ERIM TA N IM
date Tarih saat biçiminde veya tarih metin gösteriminde bir tarih.
Döndürülen değer
Ayın gününü gösteren bir tamsayı.
Açıklamalar
DAY işlevi, bulmaya çalıştığınız günün tarihini bir bağımsız değişken olarak alır. İşlevde kullanılacak olan tarihler
başka bir tarih işlevi kullanılarak, tarih döndüren bir ifade kullanılarak veya tarih saat biçiminde bir tarih yazarak
sağlanabilir. Ayrıca kabul edilen tarih dizesi biçimlerinde de tarih yazabilirsiniz.
YEAR, MONTH ve DAY işlevleri tarafından döndürülen değerler, verilen tarih değerinin görüntüleme biçiminden
bağımsız olarak Gregoryen değerler olur. Örneğin verilen tarihin görüntüleme biçimi Hicri ise YEAR, MONTH ve
DAY işlevleri için döndürülen değerler eşdeğer Gregoryen tarihi ile ilişkili değerler olacaktır.
Tarih bağımsız değişkeni tarihin metin gösterimi olduğunda DAY işlevi istemci bilgisayarın yerel ayarını ve tarih
saat ayarlarını kullanarak metin değerini yorumlar ve dönüştürme işlemini gerçekleştirir. Geçerli tarih saat ayarları
tarihi Ay/Gün/Yıl biçiminde gösteriyorsa "1/8/2009", 8 Ocak 2009 ile eşdeğer bir tarih saat değeri olarak
yorumlanır ve işlev 8 sonucunu döndürür. Ancak geçerli tarih saat ayarları tarihi Gün/Ay/Yıl biçiminde gösteriyorsa
aynı dize 1 Ağustos 2009 ile eşdeğer bir tarih saat değeri olarak yorumlanır ve işlev 1 sonucunu döndürür.
=DAY([Birthdate])
=DAY("3-4-1007")
=DAY("March 4 2007")
Örnek - Gün değerini koşul olarak kullanma
Aşağıdaki ifade, satış siparişlerinin verildiği günleri döndürür ve siparişin ayın 10. verilmiş olması durumunda
satılan ürünün satırını promosyon olarak işaretler.
=IF( DAY([SalesDate])=10,"promotion","")
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
TODAY işlevi (DAX)
DATE işlevi (DAX)
EDATE
8.05.2020 • 3 minutes to read
Başlangıç tarihinden belirtilen sayıda ay önce veya sonra gelen tarihi döndürür. EDATE işlevini kullanarak
düzenleme tarihiyle aynı ay gününe denk gelen vade tarihlerini veya son tarihleri hesaplayabilirsiniz.
Söz dizimi
EDATE(<start_date>, <months>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Tarih (datetime ).
Açıklamalar
Tarihleri sıralı dizi sayıları olarak depolayan Microsoft Excel'den farklı olarak DAX, tarih saat biçimindeki tarihlerle
çalışır. Diğer biçimlerde depolanan tarihler örtük olarak dönüştürülür.
ba şlangıç_tarihi geçerli bir tarih değilse, EDATE bir hata döndürür. İlk bağımsız değişken olarak sağladığınız
sütun başvurusunun veya tarihin bir tarih olduğundan emin olun.
aylar bir tamsayı değilse kesilir.
Tarih bağımsız değişkeni tarihin metin gösterimi olduğunda EDATE işlevi istemci bilgisayarın yerel ayarını ve
tarih/saat ayarlarını kullanarak metin değerini yorumlar ve dönüştürme işlemini gerçekleştirir. Geçerli tarih saat
ayarları tarihi Ay/Gün/Yıl biçiminde gösteriyorsa "1/8/2009", 8 Ocak 2009 ile eşdeğer bir tarih saat değeri olarak
yorumlanır. Ancak geçerli tarih saat ayarları tarihi Gün/Ay/Yıl biçiminde gösteriyorsa aynı dize 1 Ağustos 2009 ile
eşdeğer bir tarih saat değeri olarak yorumlanır.
İstenen tarih karşılık gelen ayın son gününü geçmişse, ayın son günü döndürülür. Örneğin, aşağıdaki işlevler:
EDATE("2009-01-29", 1), EDATE("2009-01-30", 1), EDATE("2009-01-31", 1), başlangıç tarihinden bir ay sonrasına
karşılık gelen 28 Şubat 2009 tarihini döndürür.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek, [TransactionDate] sütununda depolanan sipariş tarihinden üç ay sonraki tarihi döndürür.
=EDATE([TransactionDate],3)
Ayrıca bkz.
EOMONTH işlevi (DAX)
Tarih ve saat işlevleri (DAX)
EOMONTH
8.05.2020 • 3 minutes to read
Belirtilen sayıda ay önce veya sonra gelen ayın son gününün tarih saat biçiminde gösterilen tarihini döndürür.
EOMONTH işlevini kullanarak ayın son gününe gelen vade tarihlerini veya son tarihleri hesaplayabilirsiniz.
Sözdizimi
EOMONTH(<start_date>, <months>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Tarih (datetime ).
Açıklamalar
Tarihleri sıralı dizi sayıları olarak depolayan Microsoft Excel'den farklı olarak DAX, tarih saat biçimindeki tarihlerle
çalışır. EOMONTH işlevi, aşağıdaki kısıtlamalar dahilinde farklı biçimlerdeki tarihleri kabul edebilir:
ba şlangıç_tarihi geçerli bir tarih değilse, EOMONTH bir hata döndürür.
ba şlangıç_tarihi , tarih saat biçiminde olmayan bir sayısal değerse EOMONTH sayıyı tarihe dönüştürür.
Beklenmeyen sonuçlarla karşılaşmamak için EOMONTH işlevini kullanmadan önce sayıyı tarih saat biçimine
dönüştürün.
ba şlangıç_tarihi ve ay geçersiz bir tarih döndürürse EOMONTH bir hata döndürür. 1 Mart 1900'den önceki ve 31
Aralık 9999'dan sonraki tarihler geçersizdir.
Tarih bağımsız değişkeni tarihin metin gösterimi olduğunda EDATE işlevi istemci bilgisayarın yerel ayarını ve
tarih/saat ayarlarını kullanarak metin değerini yorumlar ve dönüştürme işlemini gerçekleştirir. Geçerli tarih saat
ayarları tarihi Ay/Gün/Yıl biçiminde gösteriyorsa "1/8/2009", 8 Ocak 2009 ile eşdeğer bir tarih saat değeri olarak
yorumlanır. Ancak geçerli tarih saat ayarları tarihi Gün/Ay/Yıl biçiminde gösteriyorsa aynı dize 1 Ağustos 2009 ile
eşdeğer bir tarih saat değeri olarak yorumlanır.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
aylar bağımsız değişkeni 2'ye yuvarlandığından aşağıdaki ifade 31 Mayıs 2008 tarihini döndürür.
=EOMONTH("March 3, 2008",1.5)
Ayrıca bkz.
EDATE işlevi (DAX)
Tarih ve saat işlevleri (DAX)
HOUR
8.05.2020 • 2 minutes to read
0 (12:00 A.M.) ile 23 (11:00 P.M.) arasındaki bir sayı olarak saati döndürür.
Sözdizimi
HOUR(<datetime>)
Parametreler
T ERIM TA N IM
datetime Bir tarih saat değeri, örneğin: 16:48:00 veya 4:48 PM.
Döndürülen değer
0 ile 23 arasında bir tamsayı.
Açıklamalar
HOUR işlevi, bağımsız değişken olarak bulmak istediğiniz saati içeren zamanı alır. Tarih/saat işlevi, tarih saat
döndüren bir ifade kullanarak veya değeri kabul edilen saat biçimlerinden birinde doğrudan yazarak
belirtebilirsiniz. Saatler ayrıca saat için kabul edilen metin belirtimleri olarak da girilebilir.
tarih saat bağımsız değişkeni tarih ve saatin metin gösterimi olduğunda işlev, dönüştürme işlemini
gerçekleştirmek üzere metin değerini anlamak için istemci bilgisayarın yerel ayarını ve tarih/saat ayarlarını kullanır.
Çoğu yerel ayarda saat iki nokta (:) ile ayrılır ve saati ayırmak için iki nokta kullanılan giriş metinleri doğru şekilde
ayrıştırılır. Sonuçlarınızı anlamak için yerel ayarlarınızı gözden geçirin.
Örnek
Aşağıdaki örnek, Orders adlı tablonun TransactionTime sütunundan saati döndürür.
=HOUR('Orders'[TransactionTime])
Örnek
Aşağıdaki örnek, 24 saat düzeninde öğleden sonra 3 anlamına gelen 15 değerini döndürür. Metin değeri otomatik
olarak ayrıştırılır ve bir tarih/saat değerine dönüştürülür.
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
MINUTE işlevi (DAX)
YEAR işlevi (DAX)
SECOND işlevi (DAX)
MINUTE
8.05.2020 • 2 minutes to read
Verilen tarih ve saat değerinin dakikasını 0 ile 59 arasında bir sayı olarak döndürür.
Söz dizimi
MINUTE(<datetime>)
Parametreler
T ERIM TA N IM
tarih saat Tarih saat değeri veya kabul edilen saat biçiminde bir metin;
örneğin, 16:48:00 veya 4:48 PM.
Döndürülen değer
0 ile 59 arasında bir tamsayı.
Açıklamalar
DAX, tarihleri ve sayıları sayı dizisi biçiminde depolayan Microsoft Excel'den farklı olarak tarihler ve saatler için
tarih saat veri türü kullanır. Tarih/saat işlevini veya tarih ve saat döndüren bir ifadeyi kullanarak tarih ve saat
depolayan bir sütuna başvuruda bulunabilir, MINUTE işlevine tarih saat değeri sağlayabilirsiniz.
tarih saat bağımsız değişkeni tarih ve saatin metin gösterimi olduğunda işlev, dönüştürme işlemini
gerçekleştirmek üzere metin değerini anlamak için istemci bilgisayarın yerel ayarını ve tarih/saat ayarlarını kullanır.
Çoğu yerel ayarda saat iki nokta (:) ile ayrılır ve saati ayırmak için iki nokta kullanılan giriş metinleri doğru şekilde
ayrıştırılır. Sonuçlarınızı anlamak için yerel ayarlarınızı doğrulayın.
Örnek
Aşağıdaki örnek, Orders tablosunun TransactionTime sütununda depolanan değerden dakikayı döndürmektedir.
=MINUTE(Orders[TransactionTime])
Örnek
Aşağıdaki örnek, 1:45 PM saat değeri içindeki dakika sayısı olan 45 değerini döndürür.
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
HOUR işlevi (DAX)
YEAR işlevi (DAX)
SECOND işlevi (DAX)
MONTH
8.05.2020 • 2 minutes to read
Söz dizimi
MONTH(<datetime>)
Parametreler
T ERIM TA N IM
Döndürülen değer
1 ile 12 arasında bir tamsayı.
Açıklamalar
DAX, tarihleri sayı dizileri olarak depolayan Microsoft Excel'den farklı olarak tarihlerle çalışırken tarih saat biçimini
kullanır. MONTH işlevinde bağımsız değişken olarak kullanılan tarihi girmek için kabul edilen bir tarih saat biçimi
yazabilir, tarih içeren bir sütuna başvuru yapabilir veya tarih döndüren bir ifade kullanabilirsiniz.
YEAR, MONTH ve DAY işlevleri tarafından döndürülen değerler, verilen tarih değerinin görüntüleme biçiminden
bağımsız olarak Gregoryen değerler olur. Örneğin verilen tarihin görüntüleme biçimi Hicri ise YEAR, MONTH ve
DAY işlevleri için döndürülen değerler eşdeğer Gregoryen tarihi ile ilişkili değerler olacaktır.
Tarih bağımsız değişkeni tarihin metin gösterimi olduğunda işlev istemci bilgisayarın yerel ayarını ve tarih saat
ayarlarını kullanarak metin değerini yorumlar ve dönüştürme işlemini gerçekleştirir. Geçerli tarih saat ayarları tarihi
Ay/Gün/Yıl biçiminde gösteriyorsa "1/8/2009", 8 Ocak 2009 ile eşdeğer bir tarih saat değeri olarak yorumlanır ve
işlev 1 sonucunu döndürür. Ancak geçerli tarih saat ayarları tarihi Gün/Ay/Yıl biçiminde gösteriyorsa aynı dize 1
Ağustos 2009 ile eşdeğer bir tarih saat değeri olarak yorumlanır ve işlev 8 sonucunu döndürür.
Tarihin metin gösterimi doğrudan tarih saat değerine dönüştürülemiyorsa işlev bir hata verir.
Örnek
Aşağıdaki ifade, tarih bağımsız değişkenindeki Mart ayına karşılık gelen tamsayı olan 3 değerini döndürür.
Örnek
Aşağıdaki ifade, Orders tablosunun TransactionDate sütunundaki tarihin ay değerini döndürür.
=MONTH(Orders[TransactionDate])
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
HOUR işlevi (DAX)
MINUTE işlevi (DAX)
YEAR işlevi (DAX)
SECOND işlevi (DAX)
NOW
9.05.2020 • 2 minutes to read
Söz dizimi
NOW()
Döndürülen değer
Tarih (datetime ).
Açıklamalar
NOW işlevinin sonucu yalnızca formülü içeren sütun yenilendiğinde değişir. Sürekli güncelleştirilmez.
TODAY işlevi de aynı tarihi döndürür ancak tam saati döndürmez, döndürülen saat her zaman 00:00:00 olur ve
yalnızca tarih güncelleştirilir.
Örnek
Aşağıdaki örnek, geçerli tarih ve saati döndürüp 3,5 gün ekler:
=NOW()+3.5
Ayrıca bkz.
UTCNOW işlevi
TODAY işlevi (DAX)
QUARTER
8.05.2020 • 2 minutes to read
1 (Ocak-Mart) ile 4 (Ekim-Aralık) arasında bir sayı ile temsil edilen üç aylık dönemi döndürür.
Sözdizimi
QUARTER(<date>)
Parametreler
T ERIM TA N IM
Döndürülen değer
1 ile 4 arasında bir tamsayı.
Açıklamalar
İlgili DAX işlevlerine bakın: YEAR, MONTH, DAY.
Örnek
Aşağıdaki DAX işlevi:
Şunu döndürür:
[ DE ĞER]
Örnek
Aşağıdaki DAX işlevi:
EVALUATE
ADDCOLUMNS(
FILTER(
VALUES(
FactInternetSales[OrderDate]),
[OrderDate] >= DATE(2008, 3, 31) && [OrderDate] <= DATE(2008, 4, 1)
),
"Quarter", QUARTER([OrderDate])
)
Şunu döndürür:
3/31/2008 1
4/1/2008 2
SECOND
8.05.2020 • 3 minutes to read
Bir saat değerinin saniyesini 0 ile 59 arasında bir sayı olarak döndürür.
Söz dizimi
SECOND(<time>)
Parametreler
T ERIM TA N IM
saat Tarih saat biçiminde bir saat, örneğin: 16:48:23 veya 4:48:47
PM.
Döndürülen değer
0 ile 59 arasında bir tamsayı.
Açıklamalar
DAX, tarihleri ve saatleri sayı dizileri olarak depolayan Microsoft Excel'den farklı olarak tarihlerle ve saatlerle
çalışırken tarih saat biçimini kullanır. Kaynak veriler bu biçimde değilse DAX bu verileri örtük olarak dönüştürür.
Tarihleri ve saatleri istediğiniz sayı dizisi olarak görüntülemek için biçimlendirme işlevlerini kullanabilirsiniz.
SECOND işlevine bağımsız değişken olarak sağladığınız tarih/saat değeri, tırnak işareti içinde metin dizesi olarak
belirtilebilir (örneğin, "6:45 PM"). Ayrıca başka bir ifadenin sonucu olan saat değerini veya saat değerlerini içeren
bir sütun başvurusunu da sağlayabilirsiniz.
13,60 gibi başka bir veri türüne sahip olan bir sayısal değer belirtmeniz halinde bu değer sayı dizisi olarak
yorumlanır ve tarih saat veri türüne dönüştürüldükten sonra saniye değeri ayıklanır. Sonuçları daha kolay
anlamak için bu tür sayıları SECOND işlevinde kullanmadan önce tarih olarak belirtmek isteyebilirsiniz. Örneğin
SECOND işlevini 25,56 gibi bir sayısal değer içeren bir sütunda kullandığınızda formül 24 sonucunu döndürür.
Bunun nedeni, 25,56 değerinin tarih olarak biçimlendirildiğinde 25 Ocak 1900 13:26:24 değerine eşit olmasıdır.
saat bağımsız değişkeni tarih ve saatin metin gösterimi olduğunda işlev istemci bilgisayarın yerel ayarını ve
tarih/saat ayarlarını kullanarak metin değerini yorumlar ve dönüştürme işlemini gerçekleştirir. Çoğu yerel ayarda
saat iki nokta (:) ile ayrılır ve saati ayırmak için iki nokta kullanılan giriş metinleri doğru şekilde ayrıştırılır.
Sonuçlarınızı anlamak için yerel ayarlarınızı gözden geçirin.
Örnek
Aşağıdaki formül, Orders tablosunun TransactionTime sütunundaki saatin saniye sayısını döndürür.
=SECOND('Orders'[TransactionTime])
Örnek
Aşağıdaki formül, 3 Mar t 2008 12:00:03 değerinin temsil ettiği saat değerinin saniye sayısı olan 3 değerini
döndürür.
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
HOUR işlevi (DAX)
MINUTE işlevi (DAX)
YEAR işlevi (DAX)
TIME
8.05.2020 • 3 minutes to read
Sayı olarak verilmiş saat, dakika ve saniyeleri, tarih saat biçiminde bir saate dönüştürür.
Söz dizimi
TIME(hour, minute, second)
Parametreler
T ERIM TA N IM
Döndürülen değer
Saat (tarih saat ).
Açıklamalar
Tarihleri ve saatleri sayı dizisi olarak depolayan Microsoft Excel'den farklı olarak DAX, tarih saat biçimindeki tarih
ve saatlerle çalışır. DAX işlevinde bir tarih/saat değeri kullandığınızda diğer biçimlerdeki sayılar örtük olarak
dönüştürülür. Sayı dizisi kullanmanız gerekiyorsa biçimlendirme özelliklerini kullanarak sayıların görüntülenme
şeklini değiştirebilirsiniz.
Saat değerleri tarih değerlerinin bir bölümüdür ve sayı dizisi sisteminde bir ondalık sayı ile temsil edilir. Bu nedenle,
12:00 PM tarih saat değeri yarım gün olduğundan 0,5'e eşdeğerdir.
TIME işlevine bağımsız değişken sağlamak için doğrudan değer yazabilir, başka bir ifadenin sonucunu kullanabilir
veya sayısal değer içeren bir sütuna başvurabilirsiniz. Aşağıdaki kısıtlamalar geçerlidir:
23'ten büyük saat değerleri 24'e bölünür ve kalan değer saat değeri olarak kabul edilir.
59'dan büyük dakika değerleri saat ve dakikaya dönüştürülür.
59'dan büyük saniye değerleri saat, dakika ve saniyeye dönüştürülür.
Dakikalar veya saniyeler için 24 saatten büyük değerler 24'e bölünür ve kalan değer saat değeri olarak kabul
edilir. 24'ten büyük değerler, tarih bölümünü değiştirmez.
Bu işlev tarafından döndürülen saat değerlerinin daha kolay okunabilmesi için formülün sonuçlarını içeren sütunu
veya PivotTable hücresini Microsoft Excel tarafından sağlanan saat biçimlerinden birini kullanarak biçimlendirmeniz
önerilir.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örneklerin ikisi de saati döndürür 03:00 AM saat değerini döndürür:
=TIME(27,0,0)
=TIME(3,0,0)
Örnek
Aşağıdaki örneklerin ikisi de saati döndürür 12:30 PM saat değerini döndürür:
=TIME(0,750,0)
=TIME(12,30,0)
Örnek
Aşağıdaki örnek, intHours , intMinutes , intSeconds sütunlarındaki değerleri temel alan bir saat değeri oluşturur:
=TIME([intHours],[intMinutes],[intSeconds])
Ayrıca bkz.
DATE işlevi (DAX)
Tarih ve saat işlevleri (DAX)
TIMEVALUE işlevi
8.05.2020 • 2 minutes to read
Sözdizimi
TIMEVALUE(time_text)
Parametreler
Terim Tanım
saat_metni Günün belirli bir saatini temsil eden bir metin dizesi.
saat_metni bağımsız değişkenine dahil edilen tarih bilgileri
yok sayılır.
Döndürülen değer
Tarih (datetime ).
Açıklamalar
Saat değerleri tarih değerlerinin bir bölümüdür ve bir ondalık sayı ile temsil edilir. Örneğin 12:00, günün yarısını
gösterdiği için 0,5 olarak belirtilir.
time_text bağımsız değişkeni tarih ve saatin metin gösterimi olduğunda işlev modelin yerel ayarını ve tarih/saat
ayarlarını kullanarak metin değerini yorumlar ve dönüştürme işlemini gerçekleştirir. Çoğu yerel ayarda saat iki
nokta (:) ile ayrılır ve saati ayırmak için iki nokta kullanılan giriş metinleri doğru şekilde ayrıştırılır. Sonuçlarınızı
anlamak için yerel ayarlarınızı gözden geçirin.
Örnek
=TIMEVALUE("20:45:30")
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
TODAY
8.05.2020 • 2 minutes to read
Sözdizimi
TODAY()
Döndürülen değer
Tarih (datetime ).
Açıklamalar
TODAY işlevi, çalışma kitabını her açtığınızda güncel tarihin görüntülenmesini istediğiniz durumlarda faydalıdır.
Ayrıca aralık hesabı yapmak için de kullanılabilir.
NOTE
TODAY işlevinin beklenen şekilde güncelleştirilmemesi durumunda sütunun veya çalışma kitabının yenileneceği zamanı
denetleyen ayarları değiştirmeniz gerekebilir.
NOW işlevi ile benzerdir ancak o işlev tam saati döndürürken TODAY işlevi tüm tarihler için 00:00:00 değerini
döndürür.
Örnek
Bir kişinin 1963 yılında doğduğunu biliyorsanız aşağıdaki formülü kullanarak bu yıl kaç yaşında olduğunu
bulabilirsiniz:
=YEAR(TODAY())-1963
Bu formülde TODAY işlevi YEAR işlevinin bağımsız değişkenlerinden biri olarak kullanılarak geçerli yılı alır ve
ardından 1963 çıkararak kişinin yaşını döndürür.
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
NOW işlevi (DAX)
UTCNOW
8.05.2020 • 2 minutes to read
Söz dizimi
UTCNOW()
Döndürülen değer
(datetime) .
Açıklamalar
UTCNOW işlevinin sonucu yalnızca formül yenilendiğinde değişir. Sürekli güncelleştirilmez.
Örnek
Aşağıdakiler:
Şunu döndürür:
[ DE ĞER]
2/2/2018 4:48:08 AM
Ayrıca bkz.
NOW işlevi (DAX)
UTCTODAY işlevi (DAX)
UTCTODAY
8.05.2020 • 2 minutes to read
Sözdizimi
UTCTODAY()
Döndürülen değer
Bir tarih.
Açıklamalar
UTCTODAY, tüm tarihler için 12:00:00 PM saat değerini döndürür.
UTCNOW işlevi benzerdir ancak o işlev tam saati ve tarihi döndürür.
Örnek
Aşağıdakiler:
Şunu döndürür:
[ DE ĞER]
2/2/2018
Ayrıca bkz.
NOW işlevi (DAX)
UTCNOW işlevi (DAX)
WEEKDAY
8.05.2020 • 3 minutes to read
Bir tarihte haftanın gününü tanımlayan, 1 ile 7 arasında bir sayı döndürür. Varsayılan olarak gün, 1 (Pazar) ile 7
(Cumartesi) arasındadır.
Sözdizimi
WEEKDAY(<date>, <return_type>)
Parametreler
T ERIM TA N IM
Döndürülen değer
1 ile 7 arasında bir tamsayı.
Açıklamalar
Tarihleri ve saatleri sayı dizileri olarak depolayan Microsoft Excel'den farklı olarak DAX, tarih saat biçimindeki
tarihlerle çalışır. Tarihleri seri numarası olarak göstermeniz gerekiyorsa, Excel'deki biçimlendirme seçeneklerini
kullanabilirsiniz.
Tarihleri kabul edilen metin gösterimleri olarak da yazabilirsiniz. Ancak beklenmeyen sonuçlarla karşılaşmamak için
öncelikle metin biçimindeki tarihi bir tarih saat değerine dönüştürmeniz önerilir.
Tarih bağımsız değişkeni tarihin metin gösterimi olduğunda işlev istemci bilgisayarın yerel ayarını ve tarih/saat
ayarlarını kullanarak metin değerini yorumlar ve dönüştürme işlemini gerçekleştirir. Geçerli tarih saat ayarları tarihi
Ay/Gün/Yıl biçiminde gösteriyorsa "1/8/2009", 8 Ocak 2009 ile eşdeğer bir tarih saat değeri olarak yorumlanır.
Ancak geçerli tarih saat ayarları tarihi Gün/Ay/Yıl biçiminde gösteriyorsa aynı dize 1 Ağustos 2009 ile eşdeğer bir
tarih saat değeri olarak yorumlanır.
Örnek
Aşağıdaki örnek [HireDate] sütunundaki tarihi alır, 1 ekler ve bu tarihe karşılık gelen günü görüntüler. dönü ş_türü
bağımsız değişkeni atlandığı için varsayılan biçim kullanılır ve Pazar için 1, Cumartesi için 7 gösterilir. Sonuç 4
olursa Çarşamba gününü gösterir.
=WEEKDAY([HireDate]+1)
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
WEEKNUM işlevi (DAX)
YEARFRAC işlevi (DAX)
WEEKNUM
8.05.2020 • 2 minutes to read
dönü ş_türü değerine göre verilen tarih ve yıl için hafta numarasını döndürür. Hafta numarası, haftanın bir yıl
içinde sayısal olarak nereye denk geldiğini gösterir.
Sözdizimi
WEEKNUM(<date>, <return_type>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
DAX, tarihleri sayı dizileri olarak depolayan Microsoft Excel'den farklı olarak tarihlerle ve saatlerle çalışırken tarih
saat veri türünü kullanır. Kaynak veriler farklı bir biçimdeyse DAX, hesaplamaları gerçekleştirmek için verileri örtük
olarak tarih saat türüne dönüştürür.
WEEKNUM işlevi varsayılan olarak 1 Ocak tarihinin bulunduğu haftayı yılın ilk haftası olarak kabul eden bir takvim
kuralı kullanır. Ancak Avrupa'da yaygın bir şekilde kullanılan ISO 8601 standardına göre ilk hafta, yeni yılın
günlerinin çoğunlukta olduğu (dört veya daha fazla gün) haftadır. Bu nedenle Ocak ayının ilk haftasında üç veya
daha az sayıda gün olduğunda WEEKNUM işlevi tarafından döndürülen hafta numarası ISO 8601 tanımından farklı
olacaktır.
Örnek
Aşağıdaki örnek, 14 Şubat 2010 tarihinin hafta numarasını döndürür.
Örnek
Aşağıdaki örnek, Employees tablosunun HireDate sütunundaki tarihin hafta numarasını döndürür.
=WEEKNUM('Employees'[HireDate])
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
YEARFRAC işlevi (DAX)
WEEKDAY işlevi (DAX)
YEAR
8.05.2020 • 2 minutes to read
Tarihin yıl değerini 1900-9999 aralığındaki dört basamaklı bir tamsayı olarak döndürür.
Söz dizimi
YEAR(<date>)
Parametreler
T ERIM TA N IM
Döndürülen değer
1900-9999 aralığında bir tamsayı.
Açıklamalar
DAX, tarihleri sayı dizileri olarak depolayan Microsoft Excel'den farklı olarak tarihlerle ve saatlerle çalışırken tarih
saat veri türünü kullanır.
Tarihler DATE işlevi kullanarak girilmeli veya diğer formüllerin veya işlevlerin sonucu olmalıdır. Tarihleri ayrıca 3
Mart 2007 veya 3-Mar-2003 gibi tarihler için kabul edilen metin gösterimleri şeklinde de girebilirsiniz.
YEAR, MONTH ve DAY işlevleri tarafından döndürülen değerler, verilen tarih değerinin görüntüleme biçiminden
bağımsız olarak Gregoryen değerler olur. Örneğin verilen tarihin görüntüleme biçimi Hicri takvimi kullanıyorsa
YEAR, MONTH ve DAY işlevleri için döndürülen değerler eşdeğer Gregoryen tarihi ile ilişkili değerler olacaktır.
Tarih bağımsız değişkeni tarihin metin gösterimi olduğunda işlev istemci bilgisayarın yerel ayarını ve tarih saat
ayarlarını kullanarak metin değerini yorumlar ve dönüştürme işlemini gerçekleştirir. Dizelerin biçiminin geçerli
yerel ayarlarla uyumsuz olması halinde hatalar ortaya çıkabilir. Örneğin yerel ayarınız tarihlerin ay/gün/yıl olarak
biçimlendirilmesini gerektiriyorsa ve verilen tarih gün/ay/yıl biçimindeyse, 25/1/2009 girişi 25 Ocak 2009 yerine
geçersiz tarih olarak yorumlanabilir.
Örnek
Aşağıdaki örnek 2007 sayısını döndürür.
=YEAR("March 2007")
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
HOUR işlevi (DAX)
MINUTE işlevi (DAX)
YEAR işlevi (DAX)
SECOND işlevi (DAX)
YEARFRAC
12.05.2020 • 2 minutes to read
İki tarih arasındaki tam gün sayısı ile gösterilen yılın bölümünü hesaplar. Yıl boyunca belirli bir döneme atanacak
yükümlülükleri veya avantajların oranını belirlemek için YEARFRAC çalışma sayfası işlevini kullanın.
Sözdizimi
YEARFRAC(<start_date>, <end_date>, <basis>)
Parametreler
T ERIM TA N IM
Temel - Açıklama
1 - Gerçek/gerçek
2 - Gerçek/360
3 - Gerçek/365
4 - Avrupa 30/360
Döndürülen değer
Ondalık sayı. İç veri türü, işaretli IEEE 64 bit (8 bayt) çift duyarlıklı kayan nokta sayısıdır.
Açıklamalar
DAX, tarihleri sayı dizileri olarak depolayan Microsoft Excel'den farklı olarak tarihlerle ve saatlerle çalışırken tarih
saat biçimini kullanır. Tarihleri seri numarası olarak görüntülemeniz gerekiyorsa, Excel'deki biçimlendirme
seçeneklerini kullanabilirsiniz.
ba şlangıç_tarihi veya biti ş_tarihi geçerli tarihler değilse YEARFRAC bir hata döndürür.
temel < 0 ise veya temel > 4 ise YEARFRAC bir hata döndürür.
Örnek
Aşağıdaki örnek, TransactionDate ve ShippingDate sütunlarındaki tarihler arasındaki fark ile temsil edilen bir yıl
bölümünü döndürür:
=YEARFRAC(Orders[TransactionDate],Orders[ShippingDate])
Örnek
Aşağıdaki örnek, 1 Ocak ve 1 Mart tarihleri arasındaki fark ile temsil edilen bir yıl bölümünü döndürür:
Beklenmedik sonuçlarla karşılaşmamak için mümkün olduğunda dört basamaklı yıllar kullanın. Yıl kesilmişse,
geçerli yıl kabul edilir. Gün atlanırsa ayın ilk günü kullanılır.
İkinci bağımsız değişken olan temel de atlanmıştır. Bu nedenle yıl bölümü, ABD (NASD) 30/360 standardına göre
hesaplanmıştır.
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
WEEKNUM işlevi (DAX)
YEARFRAC işlevi (DAX)
WEEKDAY işlevi (DAX)
Akıllı zaman gösterimi işlevleri
26.05.2020 • 6 minutes to read
Veri Çözümleme İfadeleri (DAX), akıllı zaman gösterimi işlevlerine sahiptir. Bu işlevleri kullanarak günler, aylar,
üç aylık dönemler ve yıllar gibi sürelerle verileri değiştirebilir ve ardından bu dönemler için hesaplamalar
oluşturup karşılaştırabilirsiniz.
Bu kategoride
İŞ L EV A Ç IK L A M A
STARTOFMONTH Belirtilen tarih sütunu için geçerli bağlamdaki ayın ilk tarihini
döndürür.
STARTOFYEAR Belirtilen tarih sütunu için geçerli bağlamdaki yılın ilk tarihini
döndürür.
Sözdizimi
CLOSINGBALANCEMONTH(<expression>,<dates>[,<filter>])
Parametreler
PA RA M ET RE TA N IM
Döndürülen değer
Geçerli bağlamda ayın son tarihinde değerlendirilen ifadeyi temsil eden skaler değer.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
NOTE
Filtre ifadesi, şu konu başlığında anlatılan kısıtlamalara tabidir: CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, ürün envanterinin "Ay Sonu Envanter Değerini" hesaplayan bir ölçü oluşturur.
Bunun nasıl çalıştığını görmek için bir PivotTable oluşturun ve CalendarYear, MonthNumberOfYear ve
DayNumberOfMonth alanlarını PivotTable'ın Satır Etiketleri alanına ekleyin. Ardından aşağıdaki formülü
kullanarak Ay Sonu Envanter De ğeri ölçüsünü PivotTable'ın De ğerler alanına ekleyin.
=CLOSINGBALANCEMONTH(SUMX(ProductInventory,ProductInventory[UnitCost]*ProductInventory[UnitsBalance]),DateTime
[DateKey])
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
CLOSINGBALANCEYEAR işlevi (DAX)
CLOSINGBALANCEQUARTER işlevi (DAX)
CLOSINGBALANCEQUARTER
8.05.2020 • 2 minutes to read
Sözdizimi
CLOSINGBALANCEQUARTER(<expression>,<dates>[,<filter>])
Parametreler
Parametre Tanım
Döndürülen değer
Geçerli bağlamda üç aylık dönemin son tarihinde değerlendirilen ifadeyi temsil eden skaler değer.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
NOTE
Filtre ifadesi, şu konu başlığında anlatılan kısıtlamalara tabidir: CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, ürün envanterinin "Üç Aylık Dönem Sonu Envanter Değerini" hesaplayan bir ölçü
oluşturur.
=CLOSINGBALANCEQUARTER(SUMX(ProductInventory,ProductInventory[UnitCost]*ProductInventory[UnitsBalance]),DateTi
me[DateKey])
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
CLOSINGBALANCEYEAR işlevi (DAX)
CLOSINGBALANCEMONTH işlevi (DAX)
CLOSINGBALANCEYEAR
8.05.2020 • 2 minutes to read
Söz dizimi
CLOSINGBALANCEYEAR(<expression>,<dates>[,<filter>][,<year_end_date>])
Parametreler
Parametre Tanım
Döndürülen değer
Geçerli bağlamda yılın son tarihinde değerlendirilen ifadeyi temsil eden skaler değer.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
NOTE
Filtre ifadesi, şu konu başlığında anlatılan kısıtlamalara tabidir: CALCULATE işlevi (DAX).
year_end_date parametresi, çalışma kitabının oluşturulduğu istemcinin yerel ayarı ile aynı yerel ayarda değişmez
bir tarih dizesidir. Tarihin yıl kısmı yoksayılır.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, ürün envanterinin "Yıl Sonu Envanter Değerini" hesaplayan bir ölçü oluşturur.
=CLOSINGBALANCEYEAR(SUMX(ProductInventory,ProductInventory[UnitCost]*ProductInventory[UnitsBalance]),DateTime[
DateKey])
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
CLOSINGBALANCEYEAR işlevi (DAX)
CLOSINGBALANCEQUARTER işlevi (DAX)
CLOSINGBALANCEMONTH işlevi (DAX)
DATEADD
8.05.2020 • 2 minutes to read
Geçerli bağlamda belirtilen sayıda aralık ile zamanda ileri veya geri kaydırılmış olan tarih sütununu içeren bir tablo
döndürür.
Sözdizimi
DATEADD(<dates>,<number_of_intervals>,<interval>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu,
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
number_of_inter vals için belirtilen sayı pozitif bir sayıysa tarihler içindeki tarihler zamanda ileri kaydırılır, sayı
negatifse tarihler içindeki tarihler zamanda geri kaydırılır.
aralık parametresi, dize kümesi değil sabit listesidir ve bu nedenle değerlerin tırnak içine alınmaması gerekir.
Ayrıca year , quarter , month , day değerleri tam olarak yazılmalıdır.
Sonuç tablosu yalnızca tarihler sütunundaki tarihleri içerir.
Geçerli bağlamdaki tarihler bitişik bir aralık oluşturmuyorsa işlev bir hata döndürür.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
=DATEADD(DateTime[DateKey],-1,year)
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
DATESBETWEEN
8.05.2020 • 2 minutes to read
ba şlangıç_tarihi ile başlayıp biti ş_tarihine kadar devam eden tarihleri içeren bir sütuna sahip olan bir tablo
döndürür.
Sözdizimi
DATESBETWEEN(<dates>,<start_date>,<end_date>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
ba şlangıç_tarihi boş bir tarih değeriyse ba şlangıç_tarihi , tarihler sütunundaki en erken değer olur.
biti ş_tarihi boş bir tarih değeriyse biti ş_tarihi , tarihler sütunundaki en geç değer olur.
ba şlangıç_tarihi ve biti ş_tarihi olarak kullanılan tarihler hesaplamaya dahil edilir. Başka bir deyişle 1 Eylül
tarihini başlangıç tarihi olarak kullandıysanız ve 1 Eylül tarihinde satış yapıldıysa, 1 Eylül satışları da hesaplamaya
dahil edilir.
NOTE
Özel tarih aralıklarıyla çalışmak için DATESBETWEEN işlevi sağlanır. Aylar, üç aylık dönemler ve yıllar gibi sık kullanılan tarih
aralıklarıyla çalışıyorsanız, DATESINPERIOD gibi uygun bir işlevi kullanmanızı öneririz.
Örnek
Aşağıdaki örnek formül, İnternet Satışları için "Yaz 2007 satışları" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), DATESBETWEEN(DateTime[DateKey],
DATE(2007,6,1),
DATE(2007,8,31)
))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
DATESINPERIOD işlevi (DAX)
DATESINPERIOD
8.05.2020 • 2 minutes to read
ba şlangıç_tarihi ile başlayıp belirtilen aralık_sayısı kadar devam eden tarihleri içeren bir sütuna sahip olan bir
tablo döndürür.
Sözdizimi
DATESINPERIOD(<dates>,<start_date>,<number_of_intervals>,<interval>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
tarihler bağımsız değişkeni bir tarih/saat sütununa başvuru olabilir.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
aralık_de ğeri için belirtilen sayı pozitif bir sayıysa tarihler zamanda ileri kaydırılır, sayı negatifse tarihler zamanda
geri kaydırılır.
aralık parametresi, dize kümesi değil sabit listesidir ve bu nedenle değerlerin tırnak içine alınmaması gerekir.
Ayrıca year , quarter , month , day değerleri tam olarak yazılmalıdır.
Sonuç tablosu yalnızca temel alınan tablo sütununun değerlerinde görüntülenen tarihleri içerir.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki formül, 24 Ağustos 2007'den 21 gün önceki İnternet satışlarını döndürür.
= CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]),DATESINPERIOD(DateTime[DateKey],DATE(2007,08,24),-21,day))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
DATESBETWEEN işlevi (DAX)
DATESMTD
8.05.2020 • 2 minutes to read
Geçerli bağlamda ay başından bugüne kadar olan tarihleri içeren sütuna sahip olan bir tablo döndürür.
Sözdizimi
DATESMTD(<dates>)
Parametreler
Terim Tanım
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, İnternet Satışları için "Ay Başından Bugüne Toplam" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), DATESMTD(DateTime[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
DATESYTD işlevi (DAX)
DATESQTD işlevi (DAX)
DATESQTD
8.05.2020 • 2 minutes to read
Geçerli bağlamda üç aylık dönemin başından bugüne kadar olan tarihleri içeren sütuna sahip olan bir tablo
döndürür.
Söz dizimi
DATESQTD(<dates>)
Parametreler
Terim Tanım
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, İnternet Satışları için "Üç Aylık Döneme Ait Değişen Toplam" hesabı yapan bir ölçü
oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), DATESQTD(DateTime[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
DATESYTD işlevi (DAX)
DATESMTD işlevi (DAX)
DATESYTD
8.05.2020 • 2 minutes to read
Geçerli bağlamda yıl başından bugüne kadar olan tarihleri içeren sütuna sahip olan bir tablo döndürür.
Sözdizimi
DATESYTD(<dates> [,<year_end_date>])
Parametreler
Terim Tanım
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu,
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
year_end_date parametresi, çalışma kitabının oluşturulduğu istemcinin yerel ayarı ile aynı yerel ayarda değişmez
bir tarih dizesidir. Tarihin yıl kısmı yoksayılır.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Değişen Toplam" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), DATESYTD(DateTime[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
DATESMTD işlevi (DAX)
DATESQTD işlevi (DAX)
ENDOFMONTH
8.05.2020 • 2 minutes to read
Belirtilen tarih sütunu için geçerli bağlamdaki ayın son tarihini döndürür.
Söz dizimi
ENDOFMONTH(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, geçerli bağlam için ay sonunu döndüren bir ölçü oluşturur.
=ENDOFMONTH(DateTime[DateKey])
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
ENDOFYEAR işlevi (DAX)
ENDOFQUARTER işlevi (DAX)
ENDOFQUARTER
8.05.2020 • 2 minutes to read
Belirtilen tarih sütunu için geçerli bağlamdaki üç aylık dönemin son tarihini döndürür.
Sözdizimi
ENDOFQUARTER(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu,
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, geçerli bağlam için üç aylık dönem sonunu döndüren bir ölçü oluşturur.
=ENDOFQUARTER(DateTime[DateKey])
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
ENDOFYEAR işlevi (DAX)
ENDOFMONTH işlevi (DAX)
ENDOFYEAR
8.05.2020 • 2 minutes to read
Belirtilen tarih sütunu için geçerli bağlamdaki yılın son tarihini döndürür.
Söz dizimi
ENDOFYEAR(<dates> [,<year_end_date>])
Parametreler
Terim Tanım
Döndürülen değer
Tarih değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu,
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
year_end_date parametresi, çalışma kitabının oluşturulduğu istemcinin yerel ayarı ile aynı yerel ayarda değişmez
bir tarih dizesidir. Tarihin yıl kısmı yoksayılır.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, geçerli bağlam için 30 Haziran'da sona eren mali yılın bitişini döndüren bir ölçü oluşturur.
=ENDOFYEAR(DateTime[DateKey],"06/30/2004")
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
ENDOFMONTH işlevi (DAX)
ENDOFQUARTER işlevi (DAX)
FIRSTDATE
8.05.2020 • 2 minutes to read
Sözdizimi
FIRSTDATE(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Geçerli bağlam tek bir tarihse, FIRSTDATE ve LASTDATE işlevleri ile döndürülen tarih eşit olur.
Döndürülen değer, tek bir sütun ve tek bir değer içeren bir tablodur. Bu nedenle bu işlev, bağımsız değişken olarak
tablo gerektiren tüm işlevlerde bağımsız değişken olarak kullanılabilir. Ayrıca döndürülen değer de tarih değerine
ihtiyaç duyulduğunda kullanılabilir.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, geçerli bağlamda İnternet satış kanalında ilk satışın yapıldığı tarihi alan bir ölçü oluşturur.
=FIRSTDATE('InternetSales_USD'[SaleDateKey])
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
LASTDATE işlevi (DAX)
FIRSTNONBLANK işlevi (DAX)
FIRSTNONBLANK
8.05.2020 • 2 minutes to read
İfadenin boş olmaması kaydıyla geçerli bağlama göre filtrelenmiş olan sütun içindeki ilk değeri döndürür.
Sözdizimi
FIRSTNONBLANK(<column>,<expression>)
Parametreler
T ERIM TA N IM
ifade Her bir sütun değeri için boş ifade değerlendirmesi yapılan
ifade.
Açıklamalar
Sütun bağımsız değişkeni aşağıdakilerden biri olabilir:
Herhangi bir sütuna başvuru.
Tek bir sütuna sahip tablo.
Tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Bu işlev genellikle ifadenin boş olmadığı durumlarda bir sütunun ilk değerini döndürmek için kullanılır. Örneğin bir
ürün satış sütununun son değerini alabilirsiniz.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Ayrıca bkz.
LASTNONBLANK işlevi (DAX)
İstatistiksel işlevler (DAX)
DAX işlevi başvurusu
FIRSTNONBLANKVALUE
8.05.2020 • 2 minutes to read
Sütundaki sıralanmış değerlerle filtrelenmiş bir ifadeyi değerlendirir ve ifadenin boş olmayan ilk değerini döndürür.
Sözdizimi
FIRSTNONBLANKVALUE(<column>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
<Sütundaki> sıralanmış değerlere karşılık gelen <ifadenin> boş olmayan ilk değeri.
Açıklamalar
Sütun bağımsız değişkeni aşağıdakilerden biri olabilir:
Herhangi bir sütuna başvuru.
Tek bir sütuna sahip tablo.
Bu işlev, <ifadenin> değerlendirmesi için <sütunun> eklendiği filtre bağlamındaki FIRSTNONBLANK işlevinden
farklıdır.
Örnek
Aşağıdaki DAX işlevi
EVALUATE
SUMMARIZECOLUMNS(
DimProduct[Class],
"FNBV",
FIRSTNONBLANKVALUE(
DimDate[Date],
SUM(FactInternetSales[SalesAmount])
)
)
Şunu döndürür:
L 699,0982
DIM P RO DUC T [ C L A SS] [ F N B V]
H 13778,24
M 1000,4375
533,83
LASTDATE
8.05.2020 • 2 minutes to read
Sözdizimi
LASTDATE(<dates>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Tarih değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu,
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Geçerli bağlam tek bir tarihse, FIRSTDATE ve LASTDATE işlevleri ile döndürülen tarih eşit olur.
Döndürülen değer, teknik açıdan tek bir sütun ve tek bir değer içeren bir tablodur. Bu nedenle bu işlev, bağımsız
değişken olarak tablo gerektiren tüm işlevlerde bağımsız değişken olarak kullanılabilir. Ayrıca döndürülen değer de
tarih değerine ihtiyaç duyulduğunda kullanılabilir.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, geçerli bağlamda İnternet satış kanalında son satışın yapıldığı tarihi alan bir ölçü oluşturur.
Bunun nasıl çalıştığını görmek için bir PivotTable oluşturun ve CalendarYear alanını PivotTable'ın Satır Etiketleri
alanına ekleyin. Ardından kod bölümünde tanımlanan formülü kullanarak LastSaleDate adlı ölçüyü PivotTable'ın
De ğerler alanına ekleyin.
=LASTDATE('InternetSales_USD'[SaleDateKey])
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
FIRSTDATE işlevi (DAX)
LASTNONBLANK işlevi (DAX)
LASTNONBLANK
8.05.2020 • 2 minutes to read
İfadenin boş olmaması kaydıyla geçerli bağlama göre filtrelenmiş olan sütun içindeki son değeri döndürür.
Sözdizimi
LASTNONBLANK(<column>,<expression>)
Parametreler
Terim Tanım
ifade Her bir sütun değeri için boş ifade değerlendirmesi yapılan
ifade.
Açıklamalar
Sütun bağımsız değişkeni aşağıdakilerden biri olabilir:
Herhangi bir sütuna başvuru.
Tek bir sütuna sahip tablo.
Tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Bu işlev genellikle ifadenin boş olmadığı durumlarda bir sütunun son değerini döndürmek için kullanılır. Örneğin
bir ürün satış sütununun son değerini alabilirsiniz.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Ayrıca bkz.
FIRSTNONBLANK işlevi (DAX)
İstatistiksel işlevler (DAX)
DAX işlevi başvurusu
LASTNONBLANKVALUE
8.05.2020 • 2 minutes to read
Sütundaki sıralanmış değerlerle filtrelenmiş bir ifadeyi değerlendirir ve ifadenin boş olmayan son değerini
döndürür.
Sözdizimi
LASTNONBLANKVALUE(<column>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
<Sütundaki> sıralanmış değerlere karşılık gelen <ifadenin> boş olmayan son değeri.
Açıklamalar
Sütun bağımsız değişkeni aşağıdakilerden biri olabilir:
Herhangi bir sütuna başvuru.
Tek bir sütuna sahip tablo.
Bu işlev, <ifadenin> değerlendirmesi için <sütunun> eklendiği filtre bağlamındaki LASTNONBLANK işlevinden
farklıdır.
Örnek
Aşağıdaki DAX işlevi
EVALUATE
SUMMARIZECOLUMNS(
DimProduct[Class],
"LNBV",
LASTNONBLANKVALUE(
DimDate[Date],
SUM(FactInternetSales[SalesAmount])
)
)
Şunu döndürür:
DIM P RO DUC T [ C L A SS] [ L N B V]
L 132,44
H 137,6
M 84,97
2288,6
NEXTDAY
8.05.2020 • 2 minutes to read
Geçerli bağlamda belirtilen tarihler sütunundaki ilk tarihi temel alarak sonraki günde yer alan tüm tarihleri içeren
bir sütuna sahip olan tabloyu döndürür.
Sözdizimi
NEXTDAY(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Bu işlev, bir sonraki günden giriş parametresindeki ilk tarihe kadar olan tüm tarihleri döndürür. Örneğin tarihler
bağımsız değişkenindeki ilk tarihin 10 Haziran 2009 olması durumunda bu işlev, 11 Haziran 2009 ile eşit olan tüm
tarihleri döndürür.
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Sonraki günün satışları" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), NEXTDAY('DateTime'[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
NEXTQUARTER işlevi (DAX)
NEXTMONTH işlevi (DAX)
NEXTYEAR işlevi (DAX)
NEXTMONTH
8.05.2020 • 2 minutes to read
Geçerli bağlamda tarihler sütunundaki ilk tarihi temel alarak sonraki ayda yer alan tüm tarihleri içeren bir sütuna
sahip olan tabloyu döndürür.
Söz dizimi
NEXTMONTH(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Bu işlev, bir sonraki günden giriş parametresindeki ilk tarihe kadar olan tüm tarihleri döndürür. Örneğin tarihler
bağımsız değişkenindeki ilk tarihin 10 Haziran 2009 olması durumunda bu işlev Temmuz 2009 ayının tüm
tarihlerini döndürür.
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Sonraki ayın satışları" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), NEXTMONTH('DateTime'[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
NEXTDAY işlevi (DAX)
NEXTQUARTER işlevi (DAX)
NEXTYEAR işlevi (DAX)
NEXTQUARTER
8.05.2020 • 2 minutes to read
Geçerli bağlamda belirtilen tarihler sütunundaki ilk tarihi temel alarak sonraki üç aylık dönemde yer alan tüm
tarihleri içeren bir sütuna sahip olan tabloyu döndürür.
Sözdizimi
NEXTQUARTER(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Bu işlev, bir sonraki üç aylık dönemden giriş parametresindeki ilk tarihe kadar olan tüm tarihleri döndürür. Örneğin
tarihler sütunundaki ilk tarihin 10 Haziran 2009 olması durumunda bu işlev Haziran-Eylül 2009 üç aylık
döneminin tüm tarihlerini döndürür.
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Sonraki üç aylık dönem satışları" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), NEXTQUARTER('DateTime'[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
NEXTDAY işlevi (DAX)
NEXTMONTH işlevi (DAX)
NEXTYEAR işlevi (DAX)
NEXTYEAR
8.05.2020 • 2 minutes to read
Geçerli bağlamda tarihler sütunundaki ilk tarihi temel alarak sonraki yılda yer alan tüm tarihleri içeren bir sütuna
sahip olan tabloyu döndürür.
Söz dizimi
NEXTYEAR(<dates>[,<year_end_date>])
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Bu işlev, bir sonraki yıldan giriş sütunundaki ilk tarihe kadar olan tüm tarihleri döndürür. Örneğin tarihler
sütunundaki ilk tarihin 2007 yılına ait olması durumunda bu işlev 2008 yılındaki tüm tarihleri döndürür.
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
year_end_date parametresi, çalışma kitabının oluşturulduğu istemcinin yerel ayarı ile aynı yerel ayarda değişmez
bir tarih dizesidir. Tarihin yıl kısmı yoksayılır.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Sonraki yılın satışları" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), NEXTYEAR('DateTime'[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
NEXTDAY işlevi (DAX)
NEXTQUARTER işlevi (DAX)
NEXTMONTH işlevi (DAX)
OPENINGBALANCEMONTH
9.05.2020 • 2 minutes to read
Söz dizimi
OPENINGBALANCEMONTH(<expression>,<dates>[,<filter>])
Parametreler
Parametre Tanım
Döndürülen değer
Geçerli bağlamda ayın ilk tarihinde değerlendirilen ifadeyi temsil eden skaler değer.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
NOTE
Filtre ifadesi, şu konu başlığında anlatılan kısıtlamalara tabidir: CALCULATE işlevi (DAX).
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar hakkında daha
fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, ürün envanterinin "Ay Başlangıcı Envanter Değerini" hesaplayan bir ölçü oluşturur.
=OPENINGBALANCEMONTH(SUMX(ProductInventory,ProductInventory[UnitCost]*ProductInventory[UnitsBalance]),DateTime
[DateKey])
Ayrıca bkz.
OPENINGBALANCEYEAR işlevi (DAX)
OPENINGBALANCEQUARTER işlevi (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
CLOSINGBALANCEMONTH işlevi (DAX)
OPENINGBALANCEQUARTER
8.05.2020 • 2 minutes to read
Söz dizimi
OPENINGBALANCEQUARTER(<expression>,<dates>[,<filter>])
Parametreler
Parametre Tanım
Döndürülen değer
Geçerli bağlamda üç aylık dönemin ilk tarihinde değerlendirilen ifadeyi temsil eden skaler değer.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
NOTE
Filtre ifadesi, şu konu başlığında anlatılan kısıtlamalara tabidir: CALCULATE işlevi (DAX).
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar hakkında daha
fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, ürün envanterinin "Üç Aylık Dönem Başlangıcı Envanter Değerini" hesaplayan bir ölçü
oluşturur.
=OPENINGBALANCEQUARTER(SUMX(ProductInventory,ProductInventory[UnitCost]*ProductInventory[UnitsBalance]),DateTi
me[DateKey])
Ayrıca bkz.
OPENINGBALANCEYEAR işlevi (DAX)
OPENINGBALANCEMONTH işlevi (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
CLOSINGBALANCEQUARTER işlevi (DAX)
OPENINGBALANCEYEAR
8.05.2020 • 2 minutes to read
Söz dizimi
OPENINGBALANCEYEAR(<expression>,<dates>[,<filter>][,<year_end_date>])
Parametreler
Parametre Tanım
Döndürülen değer
Geçerli bağlamda yılın ilk tarihinde değerlendirilen ifadeyi temsil eden skaler değer.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
NOTE
Filtre ifadesi, şu konu başlığında anlatılan kısıtlamalara tabidir: CALCULATE işlevi (DAX).
year_end_date parametresi, çalışma kitabının oluşturulduğu istemcinin yerel ayarı ile aynı yerel ayarda değişmez
bir tarih dizesidir. Tarihin yıl kısmı yoksayılır.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, ürün envanterinin "Yıl Başlangıcı Envanter Değerini" hesaplayan bir ölçü oluşturur.
=OPENINGBALANCEYEAR(SUMX(ProductInventory,ProductInventory[UnitCost]*ProductInventory[UnitsBalance]),DateTime[
DateKey])
Ayrıca bkz.
OPENINGBALANCEQUARTER işlevi (DAX)
OPENINGBALANCEMONTH işlevi (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
CLOSINGBALANCEYEAR işlevi (DAX)
PARALLELPERIOD
8.05.2020 • 3 minutes to read
Geçerli bağlamda, belirtilen tarihler sütunundaki tarihlere paralel bir dönemi temsil eden bir tarih sütununu içeren
bir tablo döndürür. Bu tarihler, belirtilen aralık kadar zaman içinde ileri veya geri doğru kaydırılmış olur.
Söz dizimi
PARALLELPERIOD(<dates>,<number_of_intervals>,<interval>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Bu işlev, tarihler ile belirtilen sütundaki geçerli tarih kümesini alır, ilk tarihi ve en son tarihi belirtilen aralık kadar
kaydırır ve daha sonra kaydırılan iki tarih arasındaki tüm bitişik tarihleri döndürür. Aralığın kısmi bir ay, üç aylık
dönem veya yıl olması durumunda sonuçtaki kısmi değerler de tamamlanarak aralığın tamamı doldurulur.
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu,
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
number_of_inter vals için belirtilen sayı pozitif bir sayıysa tarihler içindeki tarihler zamanda ileri kaydırılır, sayı
negatifse tarihler içindeki tarihler zamanda geri kaydırılır.
aralık parametresi, dize kümesi değil sabit listesidir ve bu nedenle değerlerin tırnak içine alınmaması gerekir.
Ayrıca year , quarter , month değerleri kullanıldığında tam olarak yazılmalıdır.
Sonuç tablosu yalnızca temel alınan tablo sütununun değerlerinde görüntülenen tarihleri içerir.
PARALLELPERIOD işlevi, DATEADD işleviyle benzerdir. Aralarındaki fark, PARALLELPERIOD işlevinin her zaman
verilen ayrıntı düzeyinde tam dönemleri döndürürken DATEADD işlevinin kısmi dönemleri döndürmesidir. Örneğin
aynı yıl içinde 10 Haziran tarihinde başlayıp 21 Haziran tarihinde sona eren bir tarih seçiminiz varsa ve bu seçimi
bir ay ileri kaydırmak istiyorsanız, PARALLELPERIOD işlevi sonraki ayın tüm tarihlerini (1 Temmuz ile 31 Temmuz
arası) döndürür. Ancak DATEADD işlevinin kullanılması durumunda sonuçta yalnızca 10 Temmuz ile 21 Temmuz
arasındaki tarihler yer alır.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, İnternet satışları için önceki yılın satışları hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), PARALLELPERIOD(DateTime[DateKey],-1,year))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
DATEADD işlevi (DAX)
PREVIOUSDAY
8.05.2020 • 2 minutes to read
Geçerli bağlamda tarihler sütunundaki ilk tarihten önceki günü temsil eden tüm tarihleri içeren bir sütuna sahip
olan tabloyu döndürür.
Sözdizimi
PREVIOUSDAY(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Bu işlev, giriş parametresindeki ilk tarihi belirledikten sonra ilk tarihten önceki güne karşılık gelen tüm tarihleri
döndürür. Örneğin tarihler bağımsız değişkenindeki ilk tarihin 10 Haziran 2009 olması durumunda bu işlev, 9
Haziran 2009 ile eşit olan tüm tarihleri döndürür.
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Önceki günün satışları" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), PREVIOUSDAY('DateTime'[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
PREVIOUSMONTH işlevi (DAX)
PREVIOUSQUARTER işlevi (DAX)
PREVIOUSYEAR işlevi (DAX)
PREVIOUSMONTH
8.05.2020 • 2 minutes to read
Geçerli bağlamda tarihler sütunundaki ilk tarihi temel alarak önceki ayda yer alan tüm tarihleri içeren bir sütuna
sahip olan tabloyu döndürür.
Sözdizimi
PREVIOUSMONTH(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Bu işlev, sütundaki ilk tarihi giriş olarak alır ve önceki ayın tüm tarihlerini döndürür. Örneğin tarihler bağımsız
değişkenindeki ilk tarihin 10 Haziran 2009 olması durumunda bu işlev Mayıs 2009 ayının tüm tarihlerini döndürür.
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Önceki ayın satışları" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), PREVIOUSMONTH('DateTime'[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
PREVIOUSDAY işlevi (DAX)
PREVIOUSQUARTER işlevi (DAX)
PREVIOUSYEAR işlevi (DAX)
PREVIOUSQUARTER
8.05.2020 • 2 minutes to read
Geçerli bağlamda tarihler sütunundaki ilk tarihi temel alarak önceki üç aylık dönemde yer alan tüm tarihleri
içeren bir sütuna sahip olan tabloyu döndürür.
Söz dizimi
PREVIOUSQUARTER(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Bu işlev, giriş sütunundaki ilk tarihi kullanır ve önceki üç aylık dönemin tüm tarihlerini döndürür. Örneğin tarihler
bağımsız değişkenindeki ilk tarihin 10 Haziran 2009 olması durumunda bu işlev Ocak-Mart 2009 üç aylık
döneminin tüm tarihlerini döndürür.
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, İnternet satışları için "önceki üç aylık dönemin satışları" hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), PREVIOUSQUARTER('DateTime'[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
PREVIOUSMONTH işlevi (DAX)
PREVIOUSDAY işlevi (DAX)
PREVIOUSYEAR işlevi (DAX)
PREVIOUSYEAR
8.05.2020 • 2 minutes to read
Geçerli bağlamda tarihler sütunundaki son tarihi temel alarak önceki yılda yer alan tüm tarihleri içeren bir sütuna
sahip olan tabloyu döndürür.
Sözdizimi
PREVIOUSYEAR(<dates>[,<year_end_date>])
Parametreler
Terim Tanım
Döndürülen değer
Tarih değerlerinden oluşan tek bir sütun içeren tablo.
Açıklamalar
Bu işlev, önceki yıldan giriş parametresindeki son tarihe kadar olan tüm tarihleri döndürür. Örneğin tarihler
bağımsız değişkenindeki son tarih 2009 yılındaysa bu işlev 2008 yılındaki tarihleri belirtilen year_end_date
değerine kadar döndürür.
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu,
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
year_end_date parametresi, çalışma kitabının oluşturulduğu istemcinin yerel ayarı ile aynı yerel ayarda değişmez
bir tarih dizesidir. Tarihin yıl kısmı yoksayılır.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, İnternet satışları için önceki yılın satışları hesabı yapan bir ölçü oluşturur.
=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), PREVIOUSYEAR('DateTime'[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
PREVIOUSMONTH işlevi (DAX)
PREVIOUSDAY işlevi (DAX)
PREVIOUSQUARTER işlevi (DAX)
SAMEPERIODLASTYEAR
8.05.2020 • 2 minutes to read
Geçerli bağlamda belirtilen tarihler sütununda yer alan tarihlerden bir yıl geriye kaydırılmış tarihlerin olduğu bir
sütun içeren tablo döndürür.
Sözdizimi
SAMEPERIODLASTYEAR(<dates>)
Parametreler
Terim Tanım
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu,
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, Satıcı satışları için önceki yılın satışlarını hesaplayan bir ölçü oluşturur.
=CALCULATE(SUM(ResellerSales_USD[SalesAmount_USD]), SAMEPERIODLASTYEAR(DateTime[DateKey]))
Ayrıca bkz.
Akıllı zaman gösterimi işlevleri (DAX)
Tarih ve saat işlevleri (DAX)
PREVIOUSYEAR işlevi (DAX)
PARALLELPERIOD işlevi (DAX)
STARTOFMONTH
8.05.2020 • 2 minutes to read
Belirtilen tarih sütunu için geçerli bağlamdaki ayın ilk tarihini döndürür.
Söz dizimi
STARTOFMONTH(<dates>)
Parametreler
Terim Tanım
Döndürülen değer
Tarih değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, geçerli bağlam için ay başlangıcını döndüren bir ölçü oluşturur.
=STARTOFMONTH(DateTime[DateKey])
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
STARTOFYEAR işlevi (DAX)
STARTOFQUARTER işlevi (DAX)
STARTOFQUARTER
8.05.2020 • 2 minutes to read
Belirtilen tarih sütunu için geçerli bağlamdaki üç aylık dönemin ilk tarihini döndürür.
Sözdizimi
STARTOFQUARTER(<dates>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Tarih değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, geçerli bağlam için üç aylık dönem başlangıcını döndüren bir ölçü oluşturur.
=STARTOFQUARTER(DateTime[DateKey])
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
STARTOFYEAR işlevi (DAX)
STARTOFMONTH işlevi (DAX)
STARTOFYEAR
8.05.2020 • 2 minutes to read
Belirtilen tarih sütunu için geçerli bağlamdaki yılın ilk tarihini döndürür.
Söz dizimi
STARTOFYEAR(<dates>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Tarih değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, geçerli bağlam için yılın başlangıcını döndüren bir ölçü oluşturur.
=STARTOFYEAR(DateTime[DateKey])
Ayrıca bkz.
Tarih ve saat işlevleri (DAX)
Akıllı zaman gösterimi işlevleri (DAX)
STARTOFQUARTER işlevi (DAX)
STARTOFMONTH işlevi (DAX)
TOTALMTD
8.05.2020 • 2 minutes to read
Geçerli bağlamda ay başından bugüne kadar olan tarihler için ifade değerini değerlendirir.
Söz dizimi
TOTALMTD(<expression>,<dates>[,<filter>])
Parametreler
PA RA M ET RE TA N IM
Döndürülen değer
tarihler içindeki tarihler dikkate alınarak geçerli ay başından bugüne kadar olan tarihler için ifadesini temsil eden
bir skaler değer değerlendirilir.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
NOTE
Filtre ifadesi, şu konu başlığında anlatılan kısıtlamalara tabidir: CALCULATE işlevi (DAX).
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Aylık değişen toplam" veya "Aylık değişen toplama" hesabı yapan
bir ölçü oluşturur.
=TOTALMTD(SUM(InternetSales_USD[SalesAmount_USD]),DateTime[DateKey])
Ayrıca bkz.
ALL işlevi (DAX)
CALCULATE işlevi (DAX)
TOTALYTD işlevi (DAX)
TOTALQTD işlevi (DAX)
TOTALQTD
8.05.2020 • 2 minutes to read
Geçerli bağlamda üç aylık dönemden bugüne kadar olan tarihler için ifade değerini değerlendirir.
Söz dizimi
TOTALQTD(<expression>,<dates>[,<filter>])
Parametreler
PA RA M ET RE TA N IM
Döndürülen değer
tarihler içindeki tarihler dikkate alınarak geçerli üç aylık dönemden bugüne kadar olan tüm tarihler için ifadesini
temsil eden bir skaler değer değerlendirilir.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu.
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi.
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
NOTE
Filtre ifadesi, şu konu başlığında anlatılan kısıtlamalara tabidir: CALCULATE işlevi (DAX).
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar hakkında daha
fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Üç aylık değişen toplam" veya "Üç aylık değişen toplama" hesabı
yapan bir ölçü oluşturur.
=TOTALQTD(SUM(InternetSales_USD[SalesAmount_USD]),DateTime[DateKey])
Ayrıca bkz.
ALL işlevi (DAX)
CALCULATE işlevi (DAX)
TOTALYTD işlevi (DAX)
TOTALMTD işlevi (DAX)
TOTALYTD
8.05.2020 • 2 minutes to read
Geçerli bağlamda ifadenin yıl başından bugüne kadar olan değerini değerlendirir.
Sözdizimi
TOTALYTD(<expression>,<dates>[,<filter>][,<year_end_date>])
Parametreler
PA RA M ET RE TA N IM
Döndürülen değer
Geçerli yıl başından bugüne tarihleri için değerlendiren ifadeyi temsil eden bir skaler değerdir.
Açıklamalar
Tarihler bağımsız değişkeni aşağıdakilerden biri olabilir:
Tarih/saat sütunu başvurusu,
Tarih/saat değerlerini içeren tek bir sütun döndüren tablo ifadesi,
Tarih/saat değerlerini içeren tek bir sütun tanımlayan Boole ifadesi.
NOTE
Boole ifadeleriyle ilgili kısıtlamalar için bkz. CALCULATE işlevi (DAX).
NOTE
Filtre ifadesi, şu konu başlığında anlatılan kısıtlamalara tabidir: CALCULATE işlevi (DAX).
year_end_date parametresi, çalışma kitabının oluşturulduğu istemcinin yerel ayarı ile aynı yerel ayarda değişmez
bir tarih dizesidir. Tarihin yıl kısmı gerekli değildir ve yoksayılır.
Örneğin aşağıdaki formül, EN-US yerel ayarına sahip bir çalışma kitabında (mali) year_end_date 6/30 değeri
belirtir.
Bu örnekte year_end_date “6/30”, “Haz 30”, “30 Haziran” veya ay/gün olarak çözümlenen herhangi bir dize olarak
belirtilebilir. Ancak dizenin bir tarih olarak çözümlendiğinden emin olmak için year_end_date değerini “ay/gün”
(gösterildiği gibi) olarak belirtmeniz önerilir.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek formül, İnternet satışları için "Yıllık değişen toplam" veya "Yıllık değişen toplama" hesabı yapan
bir ölçü oluşturur.
=TOTALYTD(SUM(InternetSales_USD[SalesAmount_USD]),DateTime[DateKey])
Ayrıca bkz.
ALL işlevi (DAX)
CALCULATE işlevi (DAX)
DATESYTD işlevi (DAX)
TOTALMTD işlevi (DAX)
TOTALQTD işlevi (DAX)
Filtre işlevleri
8.05.2020 • 4 minutes to read
DAX'taki filtre ve değer işlevleri, en karmaşık ve gelişmiş işlevlerdendir ve Excel işlevlerinden oldukça farklıdır.
Arama işlevleri, veritabanında olduğu gibi tabloları ve ilişkileri kullanır. Filtreleme işlevleri, veri bağlamını
değiştirerek dinamik hesaplamalar oluşturmanızı sağlar.
Bu kategoride
İŞ L EV A Ç IK L A M A
ALLNOBLANKROW Bir ilişkinin üst tablosundan boş satırlar dışındaki tüm satırları
veya bir sütundaki boş satırlar dışındaki tüm benzersiz
değerleri döndürür ve mevcut bağlam filtrelerini yoksayar.
FILTER Başka bir tablonun veya ifadenin alt kümesini temsil eden bir
tablo döndürür.
İŞ L EV A Ç IK L A M A
VALUES Tek sütunlu bir tablo veya belirtilen tablodaki veya sütundaki
birbirinden farklı değerleri içeren bir tablo döndürür.
ADDMISSINGITEMS
8.05.2020 • 4 minutes to read
Zaten mevcut değilse, tabloya birden fazla sütundan alınan öğelerin birleşimini ekler. Eklenecek öğe birleşimleri,
sütunların tüm olası değerlerini içeren kaynak sütunlara göre belirlenir.
Değerlendirmek üzere farklı sütunlardan alınan öğe birleşimlerini belirleme: Aynı tablodaki sütunlar için AutoExist,
farklı tablolardaki sütunlar için ise CrossJoin uygulanır.
ADDMISSINGITEMS işlevi, eklediği boş satırların IsSubtotal sütunları için BLANK değerleri döndürür.
Sözdizimi
ADDMISSINGITEMS(<showAllColumn>[, <showAllColumn>]…, <table>, <groupingColumn>[, <groupingColumn>]…[,
filterTable]…)
Parametreler
T ERIM TA N IM
tablo Kullanılan ölçüler için verileri olan (NON EMPTY) tüm öğeleri
içeren bir tablo.
ADDMISSINGITEMS ve ROLLUPGROUP
ROLLUPGROUP, sağlanan tablo bağımsız değişkeninde bulunan ROLLUPGROUP öğelerini yansıtmak için
ROLLUPISSUBTOTAL işlevinin içinde kullanılır.
Kısıtlamalar
Sağlanan tablo bağımsız değişkenini tanımlamak için ROLLUPISSUBTOTAL kullanılmışsa (veya eşdeğer
satırlar ve ISSUBTOTAL sütunları başka bir yöntemle eklendiyse), ROLLUPISSUBTOTAL, ADDMISSINGITEMS
içindeki aynı bağımsız değişkenlerle kullanılmalıdır. Bu durum, sağlanan tablo bağımsız değişkenini
tanımlamak için ROLLUPISSUBTOTAL ile kullanılmışsa ROLLUPGROUP için de geçerlidir.
ADDMISSINGITEMS işlevi, sağlanan tablo bağımsız değişkenini tanımlamak için ROLLUPISSUBTOTAL
kullanılması halinde her gruplandırma ölçütü veya ROLLUPGROUP öğesine karşılık gelen ISSUBTOTAL
sütunlarının sağlanan tablo bağımsız değişkeninde mevcut olmasını gerektirir. Ayrıca ISSUBTOTAL
sütunlarının adları ADDMISSINGITEMS içindeki ROLLUPISSUBTOTAL işlevinde sağlanmalı ve sağlanan tablo
bağımsız değişkenindeki Boole sütunlarının adlarıyla aynı olmalıdır. Bu ADDMISSINGITEMS işlevinin, bir
satırın diğer BLANK değerlerden bir alt toplam satırı olması durumunda BLANK değerleri belirlemesine
olanak sağlar.
ROLLUPGROUP, sağlanan tablo bağımsız değişkenini tanımlamak için ROLLUPISSUBTOTAL ile kullanılmışsa,
ROLLUPGROUP başına tam olarak bir ISSUBTOTAL sütun adı sağlanmalı ve sağlanan tablo bağımsız
değişkeninde karşılık gelen ISSUBTOTAL sütun adıyla eşleşmelidir.
Örnek
"Veri içermeyen öğeleri göster" özelliği açık olan sütunlar için boş satırlar ekleyin. ADDMISSINGITEMS işlevi,
eklediği boş satırların IsSubtotal sütunları için NULL/BLANK değerleri döndürür.
VAR 'RowHeadersShowAll' =
CALCULATETABLE
(
ADDMISSINGITEMS
(
[Sales Territory Country],
[Sales Territory Region],
'RowHeadersInCrossTab',
ROLLUPISSUBTOTAL
(
[Sales Territory Group],
[Subtotal for Sales Territory Group],
[Sales Territory Country],
[Subtotal for Sales Territory Country],
[Sales Territory Region],
[Subtotal for Sales Territory Region]
),
'RowHeaders'
),
'DateFilter','TerritoryFilter'
)
ROLLUPGROUP örneği
VAR 'RowHeadersShowAll' =
CALCULATETABLE
(
ADDMISSINGITEMS
(
[Sales Territory Country],
[Sales Territory Region],
'RowHeadersInCrossTab',
ROLLUPISSUBTOTAL
(
ROLLUPGROUP
(
[Sales Territory Group],
[Sales Territory Country]
),
[Subtotal for Sales Territory Country],
[Sales Territory Region],
[Subtotal for Sales Territory Region]
),
'RowHeaders'
)
ALL
9.06.2020 • 12 minutes to read
Uygulanmış olan filtreleri yoksayarak bir tablodaki tüm satırları veya bir sütundaki tüm değerleri döndürür. Bu
işlev, filtreleri temizlemek ve bir tablodaki satırların tümünü kapsayan hesaplamalar gerçekleştirmek için
kullanışlıdır.
Söz dizimi
ALL( [<table> | <column>[, <column>[, <column>[,…]]]] )
Parametreler
T ERIM TA N IM
ALL işlevinin bağımsız değişkeni bir temel tablo veya temel sütun başvurusu olmalıdır. ALL işlevinde tablo
ifadeleri veya sütun ifadeleri kullanamazsınız.
Döndürülen değer
Filtreleri kaldırılmış tablo veya sütun.
Açıklamalar
Bu işlev tek başına kullanılmaz, farklı hesaplamaların gerçekleştirilebileceği sonuç kümesini değiştirmek
için bir ara işlev görevi görür.
ALL() işlevi içeren DAX ifadelerinin normal davranışı, uygulanan tüm filtrelerin yoksayılmasıdır. Bununla
birlikte, bazı DAX sorgularında işleme miktarını azaltmak amacıyla filtrelemeyi iyileştiren DAX teknolojisi
auto-exist nedeniyle bu durumun geçerli olmadığı bazı senaryolar vardır. Auto-exist ile ALL() işlevinin
beklenmeyen sonuçlar sağlamasına örnek olarak aynı tablonun iki veya daha çok sütununa göre
filtreleme yapılması (dilimleyiciler kullanılırken olduğu gibi) ve aynı tabloda ALL() kullanan bir ölçü
bulunması durumu verilebilir. Böyle bir durumda auto-exist birden çok filtreyi tek filtrede birleştirir ve
yalnızca mevcut değerler bileşiminde filtreleme yapar. Bu birleştirme nedeniyle ölçü mevcut değerler
bileşimine göre hesaplanır ve sonuç, beklendiği gibi tüm değerlere değil filtrelenmiş değerlere dayanır.
Auto-exist teknolojisi ve bunun hesaplamalar üzerindeki etkisi hakkında daha fazla bilgi edinmek için
Microsoft MVP'si Alberto Ferrari'nin sql.bi.com adresindeki DAX Auto-Exist Teknolojisini Anlama
makalesine bakın.
Aşağıdaki tabloda ALL ve ALLEXCEPT işlevlerini farklı senaryolarda nasıl kullanabileceğiniz açıklanır.
İŞ L EV VE K UL L A N IM A Ç IK L A M A
ALL (Sütun[, Sütun[, …]]) Tablodaki belirtilen sütunlara uygulanmış olan tüm
filtreleri kaldırır. Diğer sütunlardaki tüm filtreler
uygulanmaya devam eder. Tüm sütun bağımsız
değişkenleri aynı tablodan alınmalıdır. ALL(Sütun)
değişkeni bir veya daha fazla sütunun bağlam filtresini
kaldırıp diğer bağlam filtrelerini korumak istediğiniz
durumlarda kullanışlıdır. İkinci ve üçüncü örneklerde bu
senaryo gösterilmiştir.
Örnek
Kategori Satışlarının Toplam Satışlara oranını hesaplama
PivotTable'da toplam satış miktarını tüm bayilere bölerek geçerli hücre için satış tutarını bulmak istediğinizi
düşünün. PivotTable kullanıcısının verileri filtreleme veya gruplandırma ölçütlerinden bağımsız olarak paydanın
her zaman aynı olmasını sağlamak için doğru genel toplamı oluşturma amacıyla ALL işlevini kullanan bir formül
tanımlarsınız.
Aşağıdaki tablo, kod bölümündeki formül kullanılarak oluşturulan yeni Tüm Bayi Satı şlarının Oranı ölçüsünün
sonuçlarını göstermektedir. Bunun nasıl çalıştığını görmek için CalendarYear alanını PivotTable'ın Satır Etiketleri
alanına, ProductCategoryName alanını da Sütun Etiketleri alanına ekleyin. Tüm Bayi Satı şlarının Oranı
ölçüsünü Pivot Table'ın De ğerler alanına sürükleyin. Sayıları yüzde olarak görüntülemek için Excel'deki
biçimlendirme özelliklerini kullanarak ölçüyü içeren hücrelere yüzde sayı biçimlendirmesi uygulayın.
T ÜM B AY I SÜT UN
SAT I Ş L A RI ET IK ET L ERI
Formül
=SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/SUMX(ALL(ResellerSales_USD),
ResellerSales_USD[SalesAmount_USD])
Örnek 1
Ürün Satışlarının Önceki Yılın Toplam Satışlarına Oranını Hesaplama
Her bir ürün kategorisi (ProductCategoryName) için yıllar içindeki satış yüzdelerini karşılaştırmalı olarak
gösteren bir tablo oluşturmak istediğinizi düşünün. Her yıl için ProductCategoryName değerlerinin yüzde
değerini elde etme amacıyla o yıl ve ürün kategorisi için satış toplamını aynı ürün kategorisi için tüm yıllardaki
satışların toplamına bölmeniz gerekir. Başka bir deyişle yüzdenin paydasını hesaplarken ProductCategoryName
filtresini korumak ancak yılın filtresini kaldırmak istersiniz.
Aşağıdaki tablo, kod bölümündeki formül kullanılarak oluşturulan yeni Yıl İçindeki Bayi Satı şları ölçüsünün
sonuçlarını göstermektedir. Bunun nasıl çalıştığını görmek için CalendarYear alanını PivotTable'ın Satır Etiketleri
alanına, ProductCategoryName alanını da Sütun Etiketleri alanına ekleyin. Sayıları yüzde olarak görüntülemek
için Excel'deki biçimlendirme özelliklerini kullanarak Yıl İçindeki Bayi Satı şları ölçüsünü içeren hücrelere
yüzde sayı biçimlendirmesi uygulayın.
Y IL İÇ IN DEK I SÜT UN
B AY I SAT I Ş L A RI ET IK ET L ERI
Formül 1
Örnek 2
Ürün Kategorilerinin Yıl İçindeki Toplam Satışa Katkısını Hesaplama
Her bir ürün kategorisindeki satışların yıllar içindeki yüzdesini gösteren bir tablo oluşturmak istediğinizi
düşünün. Her bir ürün kategorisinin belirli bir yıldaki yüzdesini hesaplamak için ilgili ürün kategorisi
(ProductCategoryName) için n yıllık toplamı hesaplamanız ve daha sonra elde edilen değeri tüm ürün
kategorilerini kapsayan n yıllık satışların toplamına bölmeniz gerekir. Başka bir deyişle yüzdenin paydasını
hesaplarken yıl filtresini korumak ancak ProductCategoryName filtresini kaldırmak istersiniz.
Aşağıdaki tablo, kod bölümündeki formül kullanılarak oluşturulan yeni Bayi Satı şları Kategori Adı ölçüsünün
sonuçlarını göstermektedir. Bunun nasıl çalıştığını görmek için CalendarYear alanını PivotTable'ın Satır Etiketleri
alanına, ProductCategoryName alanını da Sütun Etiketleri alanına ekleyin. Ardından yeni ölçüyü PivotTable'ın
De ğerler alanına ekleyin. Sayıları yüzde olarak görüntülemek için Excel'deki biçimlendirme özelliklerini
kullanarak Bayi Satı şları Kategori Adı ölçüsünü içeren hücrelere yüzde sayı biçimlendirmesi uygulayın.
B AY I SAT I Ş L A RI SÜT UN
K AT EGO RI A DI ET IK ET L ERI
Formül 2
Sözdizimi
ALLCROSSFILTERED(<table>)
Parametreler
Terim Tanım
Döndürülen değer
Yok. Açıklamalara bakın.
Açıklamalar
ALLCROSSFILTERED yalnızca filtreleri temizlemek için kullanılabilir, tablo döndürmez.
Örnek
DEFINE
MEASURE FactInternetSales[TotalQuantity1] =
CALCULATE(SUM(FactInternetSales[OrderQuantity]), ALLCROSSFILTERED(FactInternetSales))
MEASURE FactInternetSales[TotalQuantity2] =
CALCULATE(SUM(FactInternetSales[OrderQuantity]), ALL(FactInternetSales))
EVALUATE
SUMMARIZECOLUMNS(DimSalesReason[SalesReasonName],
"TotalQuantity1", [TotalQuantity1],
"TotalQuantity2", [TotalQuantity2])
ORDER BY DimSalesReason[SalesReasonName]
Şunu döndürür:
Sponsorluk 60398
NOTE
FactInternetSales tablosu ile DimSalesReason tablosu arasında doğrudan veya dolaylı çok-çok ilişkisi vardır.
ALLEXCEPT
8.05.2020 • 4 minutes to read
Tablodaki belirli sütunlara uygulanmış olanların dışındaki tüm bağlam filtrelerini kaldırır.
Sözdizimi
ALLEXCEPT(<table>,<column>[,<column>[,…]])
Parametreler
T ERIM TA N IM
ALLEXCEPT işlevinin ilk bağımsız değişkeni bir temel tablo başvurusu olmalıdır. Sonraki tüm bağımsız değişkenler
ise temel sütun başvurusu olmalıdır. ALLEXCEPT işlevinde tablo ifadeleri veya sütun ifadeleri kullanamazsınız.
Döndürülen değer
Belirtilen sütunlardaki filtreler dışında tüm filtrelerin kaldırılmış olduğu tablo.
Açıklamalar
Bu işlev tek başına kullanılmaz, farklı hesaplamaların gerçekleştirilebileceği sonuç kümesini değiştirmek için bir
ara işlev görevi görür.
Aşağıdaki tabloda açıklandığı gibi ALL ve ALLEXCEPT işlevlerini farklı senaryolarda kullanabilirsiniz.
İŞ L EV VE K UL L A N IM A Ç IK L A M A
ALL (Sütun[, Sütun[, …]]) Tablodaki belirtilen sütunlara uygulanmış olan tüm filtreleri
kaldırır. Diğer sütunlardaki tüm filtreler uygulanmaya devam
eder. Tüm sütun bağımsız değişkenleri aynı tablodan
alınmalıdır. ALL(Sütun) değişkeni bir veya daha fazla sütunun
bağlam filtresini kaldırıp diğer bağlam filtrelerini korumak
istediğiniz durumlarda kullanışlıdır.
İŞ L EV VE K UL L A N IM A Ç IK L A M A
Örnek
Aşağıda, bir ölçüde kullanabileceğiniz örnek bir formül verilmiştir.
Formül SalesAmount_USD sütununu topladıktan sonra ALLEXCEPT işlevini kullanarak DateTime tablosundaki
bağlam filtrelerini kaldırmakta ancak CalendarYear sütununun filtrelerini bırakmaktadır.
Formülde ALLEXCEPT işlevi kullanıldığından DateTime tablosundaki CalendarYear dışındaki sütunlardan biri
PivotTable'da dilimleme için kullanıldığında formül dilimleyici filtrelerini kaldırarak Tablo 1 ile gösterildiği gibi
sütun etiketi değeri için SalesAmount_USD toplamına eşit bir değer sağlar.
Ancak PivotTable'da dilimleme için CalendarYear sütununun kullanılması durumunda sonuçlar farklı olur.
CalendarYear, ALLEXCEPT işlevinin bağımsız değişkenlerinden biri olarak belirtildiğinden veriler yıla göre
dilimlendiğinde Tablo 2 ile gösterildiği gibi satır yüzeyinde yıllara bir filtre uygulanır. ALLEXCEPT() işlevinin
davranışını anlamak için kullanıcıların bu tabloları karşılaştırması önerilir.
Ayrıca bkz.
Filtre işlevleri (DAX)
ALL işlevi (DAX)
FILTER işlevi (DAX)
ALLNOBLANKROW
8.05.2020 • 7 minutes to read
Bir ilişkinin üst tablosundan boş satırlar dışındaki tüm satırları veya bir sütundaki boş satırlar dışındaki tüm
benzersiz değerleri döndürür ve mevcut bağlam filtrelerini yoksayar.
Sözdizimi
ALLNOBLANKROW( {<table> | <column>[, <column>[, <column>[,…]]]} )
Parametreler
T ERIM TA N IM
Yalnızca bir parametre geçirilmelidir. Bu parametre bir tablo veya sütun olabilir.
Döndürülen değer
Geçirilen parametre bir tablo olduğunda tablo, geçirilen parametre bir sütun olduğunda değer sütunu.
Açıklamalar
ALLNOBLANKROW işlevi yalnızca bir ilişkideki üst tablonun alt tabloda üst tabloda eşleşmeyen değerlere sahip
olan bir veya daha fazla satır olduğunda göstereceği boş satırı filtreler. Ayrıntılı açıklama için aşağıdaki örneğe
bakın.
Aşağıdaki tablo, DAX'ta sağlanan ALL çeşitlerini ve farklarını özetlemektedir:
İŞ L EV VE K UL L A N IM A Ç IK L A M A
ALLNOBLANK(tablo|sütun) Bir ilişkinin üst tablosundan boş satırlar dışındaki tüm satırları
veya bir sütundaki boş satırlar dışındaki tüm benzersiz
değerleri döndürür ve mevcut bağlam filtrelerini yoksayar.
ALL işlevlerinin nasıl çalıştığını görmek ve ALL(Tablo) ve ALL(Sütun) kullanılan örnekleri incelemek için bkz. ALL
işlevi (DAX).
Örnek
Örnek verilerdeki ResellerSales_USD tablosunda değer içermeyen ve bu nedenle çalışma kitabındaki ilişkilerde yer
alan üst tablolarla ilişkili olamayacak olan bir satır bulunmaktadır. Bu tabloyu PivotTable'da kullanarak boş satır
davranışını ve ilişkisiz verilerdeki sayıları işlemeyi öğreneceksiniz.
1. Adım: İlişkisiz verileri doğrulama
Power Pivot penceresini açıp ResellerSales_USD tablosunu seçin. ProductKey sütununda boş değerleri filtreleyin.
Bir satır kalır. Bu satırda SalesOrderLineNumber dışındaki tüm sütun değerleri boş olmalıdır.
2. Adım: PivotTable oluşturma
Yeni bir PivotTable oluşturun ve ardından datetime.[Calendar Year] sütununu Satır Etiketleri bölmesine sürükleyin.
Aşağıdaki tabloda beklenen sonuçlar gösterilmektedir:
SAT IR ET IK ET L ERI
2005
2006
2007
2008
Genel Toplam
2008 ve Genel Toplam arasındaki boş etikete dikkat edin. Bu boş etiket, alt tabloda bulunan ancak üst tabloda
eşleşen bir değer bulunmayan (bu örnekte datetime.[Calendar Year]) değerleri göstermek için oluşturulan özel bir
grup olan Bilinmeyen üyeyi temsil eder.
PivotTable'da bu boş etiketi gördüğünüzde datetime.[Calendar Year] sütunuyla ilişkili tablolardan birinde boş veya
eşleşmeyen değerler olduğunu anlayabilirsiniz. Üst tablo, boş etiketi gösteren tablodur ancak eşleşmeyen satırlar,
bir veya daha fazla alt tabloda yer almaktadır.
Bu boş etiket grubuna eklenen satırlar, üst tablodaki değerlerle eşleşmeyen değerler (tarih saat tablosunda mevcut
olmayan bir tarih gibi) veya null değerler (tarih değerinin hiç olmaması gibi) olabilir. Bu örnekte alt satış tablosunun
tüm sütunlarına bir boş değer yerleştirdik. Üst tabloda, alt tablolardan daha fazla değer bulunması bir soruna
neden olmaz.
3. Adım: ALL ve ALLNOBLANK kullanarak satırları sayma
Tablo satırlarını saymak için aşağıdaki iki ölçüyü tarih saat tablosuna ekleyin: Countrows ALLNOBL ANK of
datetime , Countrows ALL of datetime . Bu ölçüleri tanımlamak için kullanabileceğiniz formüller şunlardır:
// Countrows ALLNOBLANK of datetime
= COUNTROWS(ALLNOBLANKROW('DateTime'))
Boş bir PivotTable'da datetime.[Calendar Year] sütununu satır etiketlerine ekleyin ve ardından yeni oluşturulan
ölçüleri ekleyin. Sonuçlar aşağıdaki tabloya benzer olmalıdır:
C O UN T RO W S A L L N O B L A N K O F
SAT IR ET IK ET L ERI DAT ET IM E C O UN T RO W S A L L O F DAT ET IM E
1280 1281
Sonuçlar, tablo satırı sayısında 1 fark olduğunu gösterir. Ancak Power Pivot penceresini açıp tarih saat tablosunu
seçerseniz tabloda boş satır göremezsiniz. Bunun nedeni burada bahsedilen özel boş satırın Bilinmeyen üye
olmasıdır.
4. Adım: Sayımı doğrulama
ALLNOBLANKROW işlevinin gerçekten boş olan satırları saymadığını ve yalnızca üst tablodaki özel boş satırı
işlediğini doğrulamak için ResellerSales_USD tablosuna şu iki ölçüyü ekleyin: Countrows ALLNOBL ANKROW of
ResellerSales_USD , Countrows ALL of ResellerSales_USD .
Yeni bir PivotTable oluşturun ve datetime.[Calendar Year] sütununu Satır Etiketleri bölmesine sürükleyin. Şimdi yeni
oluşturduğunuz ölçüleri ekleyin. Sonuçlar aşağıdakine benzer olmalıdır:
C O UN T RO W S A L L N O B L A N K RO W O F C O UN T RO W S A L L O F
SAT IR ET IK ET L ERI RESEL L ERSA L ES_USD RESEL L ERSA L ES_USD
60856 60856
C O UN T RO W S A L L N O B L A N K RO W O F C O UN T RO W S A L L O F
SAT IR ET IK ET L ERI RESEL L ERSA L ES_USD RESEL L ERSA L ES_USD
Şimdi iki ölçü de aynı sonuçlara sahiptir. Bunun nedeni, ALLNOBLANKROW işlevinin tablodaki gerçekten boş olan
satırları değil yalnızca ilişkideki bir veya daha fazla alt tabloda eşleşmeyen veya boş değerler olması durumunda
üst tabloda oluşturulan özel bir durum olan boş satırı işlemesidir.
Ayrıca bkz.
Filtre işlevleri (DAX)
ALL işlevi (DAX)
FILTER işlevi (DAX)
ALLSELECTED
8.05.2020 • 7 minutes to read
Geçerli sorgudaki sütunlarda ve satırlarda bulunan bağlam filtrelerini kaldırır ancak diğer tüm bağlam filtrelerini
veya açık filtreleri tutar.
ALLSELECTED işlevi, sorgu içindeki tüm satırları ve sütunları temsil eden bağlamı alır ancak bunu yaparken satır ve
sütun filtreleri dışındaki açık filtreleri ve bağlamları tutar. Bu işlev, sorgularda görsel toplamlar elde etmek için
kullanılabilir.
Söz dizimi
ALLSELECTED([<tableName> | <columnName>[, <columnName>[, <columnName>[,…]]]] )
Parametreler
T ERIM TA N IM
Döndürülen değer
Herhangi bir sütun ve satır filtresi içermeyen sorgu bağlamı.
Açıklamalar
Bir bağımsız değişken varsa bu bağımsız değişken tableName veya columnName olur. Birden fazla bağımsız
değişken varsa bunlar aynı tablodaki sütunlar olmalıdır.
Bu işlevin ALL() işlevinden farkı, sorguda açık olarak ayarlanan tüm filtreleri ve satır ile sütun filtreleri dışındaki tüm
bağlam filtrelerini korumasıdır.
Örnek
Aşağıdaki örnek, DAX ifadelerini kullanarak bir tablo raporunda farklı görsel toplam düzeyleri oluşturmayı
göstermektedir. Raporda Bayi Satışları verilerine iki (2) önceki filtre uygulanmıştır. Bunlardan biri Sales Territory
Group = Europe, ikincisi ise Promotion Type = Volume Discount filtresidir. Filtreler uygulandıktan sonra raporun
tamamı, Tüm Yıllar veya Tüm Ürün Kategorileri için görsel toplamlar hesaplanabilir. Ayrıca görüntüleme amacıyla
rapordaki tüm filtreler kaldırılarak Tüm Bayi Satışları genel toplamı da alınmıştır. Aşağıdaki DAX ifadesinin
değerlendirilmesi sonucunda Görsel Toplamlar içeren bir tablo oluşturmak için ihtiyaç duyulan tüm bilgiler elde
edilecektir.
define
measure 'Reseller Sales'[Reseller Sales Amount]=sum('Reseller Sales'[Sales Amount])
measure 'Reseller Sales'[Reseller Grand Total]=calculate(sum('Reseller Sales'[Sales Amount]), ALL('Reseller
Sales'))
measure 'Reseller Sales'[Reseller Visual Total]=calculate(sum('Reseller Sales'[Sales Amount]), ALLSELECTED())
measure 'Reseller Sales'[Reseller Visual Total for All of Calendar Year]=calculate(sum('Reseller Sales'[Sales
Amount]), ALLSELECTED('Date'[Calendar Year]))
measure 'Reseller Sales'[Reseller Visual Total for All of Product Category Name]=calculate(sum('Reseller
Sales'[Sales Amount]), ALLSELECTED('Product Category'[Product Category Name]))
evaluate
CalculateTable(
//CT table expression
summarize(
//summarize table expression
crossjoin(distinct('Product Category'[Product Category Name]), distinct('Date'[Calendar Year]))
//First Group by expression
, 'Product Category'[Product Category Name]
//Second Group by expression
, 'Date'[Calendar Year]
//Summary expressions
, "Reseller Sales Amount", [Reseller Sales Amount]
, "Reseller Grand Total", [Reseller Grand Total]
, "Reseller Visual Total", [Reseller Visual Total]
, "Reseller Visual Total for All of Calendar Year", [Reseller Visual Total for All of Calendar Year]
, "Reseller Visual Total for All of Product Category Name", [Reseller Visual Total for All of Product Category
Name]
)
//CT filters
, 'Sales Territory'[Sales Territory Group]="Europe", 'Promotion'[Promotion Type]="Volume Discount"
)
order by [Product Category Name], [Calendar Year]
Yukarıdaki ifadeyi SQL Server Management Studio'da AdventureWorks DW Tablosal Modeli ile yürüttükten sonra
şu sonuçları elde edeceksiniz:
[ ÜRÜN
[ TA K VIM K AT EGO RISI
Y IL IN IN A DIN IN
[ ÜRÜN TA M A M I IÇ IN TA M A M I IÇ IN
K AT EGO RISI [ B AY I SAT I Ş [ B AY I GEN EL [ B AY I GÖ RSEL B AY I GÖ RSEL B AY I GÖ RSEL
A DI] [ TA K VIM Y IL I] T UTA RI] TO P L A M I] TO P L A M I] TO P L A M I] TO P L A M I]
NOTE
İfadenizde açık filtreler varsa bunlar da ifadeye uygulanır.
HESAPLA
8.05.2020 • 4 minutes to read
Sözdizimi
CALCULATE(<expression>,<filter1>,<filter2>…)
Parametreler
T ERIM TA N IM
İlk parametre olarak kullanılan ifade temelde bir ölçü ile aynıdır.
Bağımsız değişken olarak kullanılan Boole ifadeleri için aşağıdaki kısıtlamalar geçerlidir:
İfade bir ölçüye başvuramaz.
İfade, bir tabloyu tarayan veya toplama işlevleri dahil bir tablo döndüren herhangi
bir işlevi kullanamaz.
Ancak bir Boolean ifadesi tek bir değer veya skaler bir değeri hesaplayan herhangi bir işlevi
kullanabilir.
Döndürülen değer
İfadenin sonucu olan değer.
Açıklamalar
Verilerin filtrelenmiş olması durumunda CALCULATE işlevi, verilerin filtrelendiği bağlamı
değiştirir ve ifadeyi belirttiğiniz yeni bağlamda değerlendirir. Bir filtre bağımsız
değişkeninde kullanılan her sütun için söz konusu sütundaki varolan filtreler kaldırılır ve
bunun yerine filtre bağımsız değişkeninde kullanılan filtre uygulanır.
Örnek
Geçerli bayi tarafından gerçekleştirilen satışların tüm bayiler tarafından gerçekleştirilen
satışlara oranını hesaplamak için PivotTable'a geçerli hücredeki satış toplamını hesaplayan
(pay) ve bu toplamı tüm bayilerin toplamına (payda) bölen bir ölçü eklersiniz. Paydanın
PivotTable'ın verileri filtreleme veya gruplandırma ölçütlerinden bağımsız olarak aynı
kalmasını sağlamak için formülün paydayı temsil eden bölümünde ALL işlevi kullanılarak
tüm filtrelerin temizlenmesi ve doğru toplamın oluşturulması gerekir.
Aşağıdaki tablo, kod bölümündeki formül kullanılarak oluşturulan Tüm Bayi Satı şlarının
Oranı adlı ölçünün sonuçlarını göstermektedir.
Bunun nasıl çalıştığını görmek için CalendarYear alanını PivotTable'ın Satır Etiketleri
alanına, ProductCategoryName alanını da Sütun Etiketleri alanına ekleyin. Ardından yeni
ölçüyü PivotTable'ın De ğerler alanına ekleyin. Sayıları yüzde olarak göstermek için, Tüm
Bayi Satı şlarının Oranı adlı yeni ölçüyü içeren PivotTable alanına yüzde sayı
biçimlendirmesi uygulayın.
T ÜM B AY I SÜT UN
SAT I Ş L A RI ET IK ET L ERI
=( SUM('ResellerSales_USD'[SalesAmount_USD]))
/CALCULATE( SUM('ResellerSales_USD'[SalesAmount_USD])
,ALL('ResellerSales_USD'))
İlgili işlevler
CALCULATE işlevi, ilk bağımsız değişken olarak tek bir değer döndüren bir ifade alırken
CALCULATETABLE işlevi değer içeren bir tablo alır.
Ayrıca bkz.
CALCULATETABLE işlevi (DAX)
Filtre işlevleri (DAX)
CALCULATETABLE
8.05.2020 • 2 minutes to read
Sözdizimi
CALCULATETABLE(<expression>,<filter1>,<filter2>,…)
Parametreler
T ERIM TA N IM
İlk parametre olarak kullanılan ifade, tablo döndüren bir işlev olmalıdır.
Bağımsız değişken olarak kullanılan Boole ifadeleri için aşağıdaki kısıtlamalar geçerlidir:
İfade bir ölçüye başvuramaz.
İfade, bir tabloyu tarayan veya toplama işlevleri dahil bir tablo döndüren herhangi bir işlevi kullanamaz.
Ancak bir Boolean ifadesi tek bir değer veya skaler bir değeri hesaplayan herhangi bir işlevi kullanabilir.
Döndürülen değer
Değer tablosu.
Açıklamalar
CALCULATETABLE işlevi, verilerin filtrelendiği bağlamı değiştirir ve ifadeyi belirttiğiniz yeni bağlamda değerlendirir.
Bir filtre bağımsız değişkeninde kullanılan her sütun için söz konusu sütundaki varolan filtreler kaldırılır ve bunun
yerine filtre bağımsız değişkeninde kullanılan filtre uygulanır.
Bu işlev, RELATEDTABLE işlevi ile benzerdir.
Örnek
Aşağıdaki örnekte CALCULATETABLE işlevi ile 2006 yılında gerçekleştirilen İnternet satışlarının toplam değeri
alınmaktadır. Bu değer daha sonra 2006 yılında yapılan tüm satışlarla karşılaştırılarak İnternet satışlarının oranını
hesaplamak için kullanılır.
Aşağıdaki formül:
Ayrıca bkz.
RELATEDTABLE işlevi (DAX)
Filtre işlevleri (DAX)
CROSSFILTER
8.05.2020 • 4 minutes to read
İki sütun arasındaki ilişkiyi hesaplamak için kullanılacak çapraz filtreleme yönünü belirtir.
Söz dizimi
CROSSFILTER(<columnName1>, <columnName2>, <direction>)
Parametreler
T ERIM TA N IM
columnName1 Standart DAX söz dizimi kullanılarak tam adıyla belirtilmiş olan
var olan bir sütunun adı. Genellikle kullanılacak ilişkinin çok
tarafını temsil eder. Bağımsız değişkenlerin ters sırada verilmesi
durumunda işlev bunları kullanmadan önce yerlerini değiştirir.
Bu bağımsız değişken bir ifade olamaz.
columnName2 Standart DAX söz dizimi kullanılarak tam adıyla belirtilmiş olan
var olan bir sütunun adı. Genellikle kullanılacak ilişkinin bir
tarafını veya arama tarafını temsil eder. Bağımsız değişkenlerin
ters sırada verilmesi durumunda işlev bunları kullanmadan
önce yerlerini değiştirir. Bu bağımsız değişken bir ifade olamaz.
her ikisi -
Filtrenin iki tarafından birini filtreler
Döndürülen değer
İşlev hiçbir değer döndürmez; işlev, sorgu süresince yalnızca belirtilen ilişki için çapraz filtreleme yönünü ayarlar.
Açıklamalar
1:1 ilişki söz konusu olduğunda, bir ve iki yön arasında bir fark yoktur.
CROSSFILTER yalnızca bağımsız değişken olarak filtre alan işlevlerde kullanılabilir, örneğin: CALCULATE,
CALCULATETABLE, CLOSINGBALANCEMONTH, CLOSINGBALANCEQUARTER, CLOSINGBALANCEYEAR,
OPENINGBALANCEMONTH, OPENINGBALANCEQUARTER, OPENINGBALANCEYEAR, TOTALMTD, TOTALQTD
ve TOTALYTD işlevleri.
CROSSFILTER modeldeki mevcut ilişkileri kullanır ve ilişkileri bitiş noktası sütunlarına göre tanımlar.
CROSSFILTER işlevinde bir ilişkinin çapraz filtreleme ayarı önemli değildir. Başka bir deyişle, ilişkinin
modelde bir veya iki yön kullanacak şekilde ayarlanmış olması işlevin kullanımını etkilemez. CROSSFILTER,
var olan çapraz filtreleme ayarlarını geçersiz kılar.
Bağımsız değişken olarak adlandırılan sütunlardan herhangi biri ilişkinin parçası değilse veya bağımsız
değişkenler farklı ilişkilere aitse bir hata döndürülür.
CALCULATE ifadelerinin iç içe yerleştirilmesi ve birden fazla CALCULATE ifadesinde CROSSFILTER işlevi
bulunması halinde çakışma veya belirsizlik halinde en içteki CROSSFILTER işlevi uygulanır.
Örnek
Aşağıdaki model diyagramında hem DimProduct hem de DimDate, FactOnlineSales ile doğrudan bir ilişkiye
sahiptir.
Varsayılan olarak, yıla göre satılan ürünlerin sayısını almak mümkün değildir:
Tek sütunlu bir tablo veya belirtilen sütundaki birbirinden farklı değerleri içeren bir tablo döndürür. Başka bir
deyişle yinelenen değerler kaldırılır ve yalnızca benzersiz değerler döndürülür.
NOTE
Bu işlev, değerleri bir çalışma sayfasındaki bir hücreye veya sütuna döndürmek için kullanılamaz. Bunun yerine DISTINCT
işlevini bir formül içine ekleyerek başka bir işleve geçirilip farklı işlemler için sayılabilecek, toplanabilecek veya kullanılabilecek
benzersiz değerlerden oluşan bir liste elde edebilirsiniz.
Sözdizimi
DISTINCT(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Benzersiz değerlerden oluşan bir sütun.
Açıklamalar
DISTINCT işlevinin sonuçları geçerli filtre bağlamından etkilenir. Örneğin aşağıdaki örnekte verilen formülü
kullanarak bir ölçü oluşturmanız halinde tablo yalnızca belirli bir bölgeyi veya zaman aralığını gösterecek şekilde
filtrelendiğinde sonuçlar değişir.
İlgili işlevler
DISTINCT işlevinin başka bir tablodaki veya ifadedeki yinelenen satırları kaldırarak yeni bir tablo döndüren
DISTINCT (tablo) adlı başka bir sürümü de mevcuttur.
VALUES işlevi DISTINCT ile benzerdir ve benzersiz değerler içeren bir liste oluşturmak için kullanılabilir. Bu işlev
genellikle DISTINCT ile tam olarak aynı sonuçları döndürecektir. Ancak bazı bağlamlarda VALUES işlevi ek bir özel
değer döndürür. Daha fazla bilgi için bkz. VALUES işlevi (DAX).
Örnek
Aşağıdaki formül, internet kanalı üzerinden sipariş oluşturmuş olan benzersiz müşteri sayısını belirtmektedir.
Altındaki tabloda formülün PivotTable'a eklenmesi durumunda elde edilebilecek olası değerler gösterilmiştir.
=COUNTROWS(DISTINCT(InternetSales_USD[CustomerKey]))
DISTINCT işlevinin döndürdüğü değer listesini doğrudan bir sütuna yapıştıramazsınız. Bunun yerine DISTINCT
işlevinin sonuçlarını listeyi kullanarak değer sayma, filtreleme veya toplama işlemi gerçekleştiren başka bir işleye
geçirmeniz gerekir. Örneği mümkün olduğunca basit tutmak için burada benzersiz değerlerden oluşan tablo
COUNTROWS işlevine geçirilmiştir.
B EN Z ERSIZ İN T ERN ET
M Ü Ş T ERIL ERI SÜT UN ET IK ET L ERI
Ayrıca, sonuçların birbirine eklenemediğini unutmayın. Başka bir deyişle 2007 yılına ait toplam benzersiz müşteri
sayısı, aynı yılın Aksesuarlar, Bisikletler ve Kıyafet müşterilerinin toplamı değildir. Bunun nedeni bir müşterinin
birden fazla gruba dahil olabilmesidir.
Ayrıca bkz.
Filtre işlevleri (DAX)
FILTER işlevi (DAX)
RELATED işlevi (DAX)
VALUES işlevi (DAX)
DISTINCT (tablo)
8.05.2020 • 2 minutes to read
Başka bir tabloda veya ifadede yer alan yinelenen satırları kaldırarak bir tablo döndürür.
Söz dizimi
DISTINCT(<table>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Yalnızca farklı satırları içeren bir tablo.
İlgili işlevler
DISTINCT işlevinin giriş parametresi olarak sütun adı olan DISTINCT (sütun) sürümü de vardır.
Örnek
Aşağıdaki sorgu:
[ DE ĞER1] [ DE ĞER2]
1 A
2 B
Ayrıca bkz.
Filtre işlevleri (DAX)
DISTINCT (sütun) (DAX)
FILTER işlevi (DAX)
RELATED işlevi (DAX)
VALUES işlevi (DAX)
EARLIER
8.05.2020 • 7 minutes to read
Belirtilen sütunun geçerli değerini, bahsedilen sütunun dış değerlendirme geçişinde döndürür.
EARLIER, giriş olarak belirli bir değeri kullanmak ve bu giriş değerine göre hesaplama yapmak istediğiniz iç içe
yerleştirilmiş hesaplama işlemleri için kullanışlıdır. Microsoft Excel'de bu tür hesaplamaları yalnızca geçerli satır
bağlamında yapabilirsiniz. Ancak DAX'ta giriş değerini depolayıp tablonun tamamındaki verileri kullanarak
hesaplama yapabilirsiniz.
EARLIER genellikle hesaplanmış sütun bağlamında kullanılır.
Söz dizimi
EARLIER(<column>, <number>)
Parametreler
T ERIM TA N IM
Özel Durumlar
Hata açıklaması
Açıklamalar
EARLIER , tablo taraması başlamadan önce satır bağlamı olması durumunda başarılı olur. Aksi halde bir hata
döndürür.
EARLIER işlevinin performansı düşük olabilir. Bunun nedeni, teoride neredeyse toplam satır sayısının (sütundaki)
karesi kadar (ifadenin söz dizimine bağlı olarak) işlem yapması gerekmesidir. Örneğin sütunda 10 satır varsa
yaklaşık 100 işlem gerekebilir. 100 satırınız varsa, gerçekleştirilecek işlem sayısı 10.000'i bulabilir.
NOTE
Pratikte ise VertiPaq bellek içi analiz altyapısı gerçek hesaplama sayısını azaltmak için iyileştirme gerçekleştirir ancak yine de
özyineleme gerektiren formüller oluştururken dikkatli olmanız önerilir.
Örnek
EARLIER işlevinin kullanımını göstermek için sıralama değerini hesaplayıp bu değeri diğer hesaplamalarda
kullanan bir senaryo geliştirilmesi gerekir.
Aşağıdaki örnekte her bir ProductSubcategory için toplam satış miktarının gösterildiği basit
ProductSubcategor y tablosu kullanılmıştır.
Tablonun sıralama sütununu da içeren son hali aşağıda gösterilmiştir.
6 Frenler $62.113,16 23
19 Şapkalar $47.934,54 28
7 Zincirler $8.847,08 35
29 Temizleyiciler $16.882,62 32
9 Dişliler $64.965,33 22
30 Çamurluklar $41.974,10 29
10 Çatallar $74.727,66 21
20 Eldivenler $228.353,58 12
4 Gidonlar $163.257,06 17
11 Kulaklıklar $57.659,99 25
31 Kasklar $451.192,31 9
21 Formalar $699.429,78 7
33 Işıklar 36
34 Kilitler $15.059,47 33
EN GL ISH P RO DUC T SUB C AT E
P RO DUC T SUB C AT EGO RY K EY GO RY N A M E TOTA L SUB C AT EGO RY SA L ES SUB C AT EGO RY RA N K IN G
35 Çantalar 36
13 Pedallar $140.422,20 19
36 Pompalar $12.695,18 34
15 Seleler $52.526,47 26
22 Şortlar $385.707,80 10
23 Çoraplar $28.337,85 31
24 Taytlar $189.179,37 16
25 Yelekler $240.990,04 11
17 Tekerlekler $648.240,04 8
= COUNTROWS(FILTER(ProductSubcategory, EARLIER(ProductSubcategory[TotalSubcategorySales])
<ProductSubcategory[TotalSubcategorySales]))+1
Ayrıca bkz.
EARLIEST işlevi (DAX)
Filtre işlevleri (DAX)
EARLIEST
8.05.2020 • 2 minutes to read
Belirtilen sütunun geçerli değerini, belirtilen sütunun dış değerlendirme geçişinde döndürür.
Söz dizimi
EARLIEST(<column>)
Parametreler
T ERIM TA N IM
Açıklamalar
EARLIEST işlevi EARLIER işleviyle benzerdir ancak ek bir özyineleme düzeyi belirtmenizi sağlar.
Örnek
Geçerli örnek veriler bu senaryoyu desteklememektedir.
=EARLIEST(<column>)
Ayrıca bkz.
EARLIER işlevi (DAX)
Filtre işlevleri (DAX)
FILTER
8.05.2020 • 3 minutes to read
Başka bir tablonun veya ifadenin alt kümesini temsil eden bir tablo döndürür.
Sözdizimi
FILTER(<table>,<filter>)
Parametreler
T ERIM TA N IM
tablo Filtre uygulanacak tablo. Tablo, bir tablo sonucu veren ifade
de olabilir.
filtre Tablonun her satırı için değerlendirilecek olan bir Boole ifadesi.
Örneğin [Amount] > 0 veya [Region] = "France"
olabilir.
Döndürülen değer
Yalnızca filtrelenen satırları içeren bir tablo.
Açıklamalar
FILTER işlevini kullanarak çalıştığınız tablodaki satır sayısını azaltabilir veya hesaplamalara yalnızca belirli verileri
dahil edebilirsiniz. FILTER, tek başına değil bağımsız değişken olarak tablo gerektiren diğer işlevlere eklenmiş bir
işlev şeklinde kullanılır.
Örnek
Aşağıdaki örnek, ABD'deki satışları filtreleyen bir ölçü kullanarak ABD dışındaki İnternet satışları raporunu
oluşturur ve ardından takvim yılı ve ürün kategorilerine göre dilimleme yapar. Bu ölçüyü oluşturmak için, Satış
Bölgesi ile İnternet Satışları USD tablosunu filtrelemeniz ve arsından filtrelenmiş tabloyu SUMX işlevinde
kullanmanız gerekir.
Bu örnekte FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
ifadesi, ABD satış bölgesine ait olan satırları çıkardıktan sonra İnternet Satışları tablosunun bir alt kümesi olan
yeni bir tablo döndürür. RELATED işlevi, İnternet Satışları tablosu ile SalesTerritory içindeki SalesTerritoryCountry
içindeki Bölge anahtarıyla bağlantı oluşturur.
Aşağıdaki tabloda ABD Dışı İnternet Satışları ölçüsü için kavram kanıtı gösterilmiştir ve formül aşağıdaki kod
bölümünde belirtilmiştir. Tablo, filtre ifadesinin çalıştığını göstermek için tüm İnternet satışlarını ABD dışındaki
İnternet satışlarıyla karşılaştırır ve ABD'yi hesaplamanın dışında bırakır.
Bu tabloyu yeniden oluşturmak için SalesTerritoryCountry alanını PivotTable'ın Satır Etiketleri alanına ekleyin.
Tablo 1. ABD'deki ve diğer tüm bölgelerdeki toplam satışları karşılaştırma
SAT IR ET IK ET L ERI İN T ERN ET SAT I Ş L A RI A B D DI Ş I İN T ERN ET SAT I Ş L A RI
Son rapor tablosu, ABD Dışı İnternet Satışları ölçüsünü kullanarak bir PivotTable oluşturduğunuzda elde
edeceğiniz sonuçları gösterir. CalendarYear alanını PivotTable'ın Satır Etiketleri alanına, ProductCategoryName
alanını da Sütun Etiketleri alanına ekleyin.
Tablo 2. ABD dışı satışları ürün kategorilerine göre karşılaştırma
A B D DI Ş I İN T ERN ET
SAT I Ş L A RI SÜT UN ET IK ET L ERI
Ayrıca bkz.
Filtre işlevleri (DAX)
ALL işlevi (DAX)
ALLEXCEPT işlevi (DAX)
FILTERS
8.05.2020 • 2 minutes to read
Söz dizimi
FILTERS(<columnName>)
Parametreler
T ERIM A Ç IK L A M A
Döndürülen değer
Doğrudan columnName filtresi olarak uygulanan değerler.
Açıklamalar
Örnek
Aşağıdaki örnek, bir sütundaki doğrudan filtre sayısının nasıl belirleneceğini gösterir.
=COUNTROWS(FILTERS(ResellerSales_USD[ProductKey]))
columnName üzerindeki doğrudan filtrelenen değerlerin sayısı bir ise TRUE , değilse FALSE döndürür.
Söz dizimi
HASONEFILTER(<columnName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
columnName üzerindeki doğrudan filtrelenen değerlerin sayısı bir ise TRUE , değilse FALSE .
Açıklamalar
1. Bu işlev, HASONEVALUE() ile benzerdir. Ancak HASONEVALUE(), çapraz filtrelerle çalışırken HASONEFILTER()
doğrudan filtre ile çalışır.
Örnek
Aşağıdaki örnekte tek filtre varsa ResellerSales_USD[ProductKey]) filtresini döndürmek veya
ResellerSales_USD[ProductKey]) üzerinde filtre yoksa veya birden fazla filtre varsa BLANK döndürmek için
HASONEFILTER() kullanımı gösterilmiştir.
=IF(HASONEFILTER(ResellerSales_USD[ProductKey]),FILTERS(ResellerSales_USD[ProductKey]),BLANK())
HASONEVALUE
8.05.2020 • 3 minutes to read
columnName bağlamı yalnızca bir ayrı değeri içerecek şekilde filtrelendiğinde TRUE döndürür. Aksi takdirde
FALSE döndürür.
Sözdizimi
HASONEVALUE(<columnName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
columnName bağlamı yalnızca bir ayrı değeri içerecek şekilde filtrelendiğinde TRUE . Aksi takdirde FALSE
döndürür.
Açıklamalar
HASONEVALUE() ile eşdeğer olan ifade COUNTROWS(VALUES(<columnName>)) = 1 ifadesidir.
Örnek
Aşağıdaki örnekte önceden tanımlanmış bir senaryoda yüzde değeri tahmininde bulunmak için bağlamın bir
değerle dilimlenip dilimlenmediğini doğrulayan bir formül oluşturmak istiyorsunuz. Bu örnekte Bayi Satışlarını
2007 yılındaki satışlarla karşılaştırmak ve bağlamın tek bir yıl ile filtrelenip filtrelenmediğini öğrenmek
istiyorsunuz. Ayrıca karşılaştırmanın anlamsız olması durumunda BLANK döndürmek istiyorsunuz.
Aşağıdaki ifadeyi kullanarak [ResellerSales compared to 2007] adlı bir ölçü oluşturun:
=IF(HASONEVALUE(DateTime[CalendarYear]),SUM(ResellerSales_USD[SalesAmount_USD])/CALCULATE(SUM(ResellerSales_US
D[SalesAmount_USD]),DateTime[CalendarYear]=2007),BLANK())
1. Ölçüyü oluşturduktan sonra [ResellerSales compared to 2007] altında boş bir sonuç olması gerekir. Sonuçta
BLANK hücrenin olmasının nedeni, bağlamınızda tek yıl filtresi bulunmamasıdır.
2. DateTime[CalendarYear] öğesini Sütun Etiketleri kutusuna sürükleyin. Tablonuz şöyle görünmelidir:
SÜT UN ET IK ET L ERI
RESEL L ERSA L ES
C O M PA RED TO 2007 SÜT UN ET IK ET L ERI
Sütunların altında Genel Toplam göründüğünü ancak bunun satırlarda görünmediğini fark ettiniz mi?
Bunun nedeni, satırlar için Genel Toplam bağlamınızın birden fazla yıl, sütunlar için ise bir yıl belirtmesidir.
4. DateTime[CalendarYear] öğesini Yatay Dilimleyiciler kutusuna, SalesTerritory[SalesTerritoryGroup]
öğesini de Yatay Etiketler kutusuna sürükleyin. Tablonuzda birden fazla yıla ait veriler olduğu için sonuç
kümesi boş olmalıdır. Dilimleyicide 2006 yılını seçtiğinizde tablonuzda yeniden veri olması gerekir. Diğer
yılları deneyerek sonuçlardaki değişiklikleri gözlemleyin.
5. Özetlemek gerekirse HASONEVALUE() işlevi ifadenizin columnName için tek bir değer bağlamında
değerlendirilip değerlendirilmediğini belirlemenizi sağlar.
ISCROSSFILTERED
8.05.2020 • 2 minutes to read
columnName veya aynı ya da ilişkili tablodaki başka bir sütun filtrelendiğinde TRUE döndürür.
Söz dizimi
ISCROSSFILTERED(<columnName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
columnName veya aynı ya da ilişkili tablodaki başka bir sütun filtrelendiğinde TRUE olur. Aksi halde FALSE
döndürür.
Açıklamalar
Aynı tablodaki veya ilişkili bir tablodaki başka bir sütuna bir filtre uygulandığında ve bu filtre columnName
sütununu filtrelediğinde çapraz filtreleme gerçekleştirildiği kabul edilir. Filtre veya filtreler sütuna
uygulandığında o sütun doğrudan filtrelenmiş kabul edilir.
İlgili ISFILTERED işlevi (DAX), columnName doğrudan filtrelendiğinde TRUE döndürür.
Ayrıca bkz.
ISFILTERED işlevi (DAX)
FILTERS işlevi (DAX)
HASONEFILTER işlevi (DAX)
HASONEVALUE işlevi (DAX)
ISFILTERED
9.05.2020 • 2 minutes to read
columnName doğrudan filtrelendiğinde TRUE döndürür. Sütunda filtre yoksa veya filtrelemenin nedeni, aynı
tablodaki veya ilgili tablodaki farklı bir sütunun filtrelenmesi ise işlev FALSE döndürür.
Sözdizimi
ISFILTERED(<columnName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
columnName doğrudan filtrelendiğinde TRUE.
Açıklamalar
columnName, filtre veya filtreler doğrudan sütuna uygulandığında doğrudan filtrelenmiş kabul edilir. Aynı
tablodaki veya ilişkili bir tablodaki başka bir sütuna bir filtre uygulandığında ve bu filtre columnName
sütununu filtrelediğinde çapraz filtreleme gerçekleştirildiği kabul edilir.
columnName veya aynı ya da ilişkili tablodaki başka bir sütun filtrelendiğinde ilgili ISCROSSFILTERED işlevi
(DAX) TRUE döndürür.
Ayrıca bkz.
ISCROSSFILTERED işlevi (DAX)
FILTERS işlevi (DAX)
HASONEFILTER işlevi (DAX)
HASONEVALUE işlevi (DAX)
KEEPFILTERS
9.05.2020 • 5 minutes to read
Söz dizimi
KEEPFILTERS(<expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Değer tablosu.
Açıklamalar
KEEPFILTERS işlevini CALCULATE ve CALCULATETABLE işlevleriyle aynı bağlamda kullanarak bu işlevlerin standart
davranışını geçersiz kılabilirsiniz.
CALCULATE gibi işlevlerde filtreleme bağımsız değişkenleri varsayılan olarak ifadenin değerlendirilmesi için
bağlam olarak kullanılır ve CALCULATE işlevinde kullanılan bu filtre bağımsız değişkenleri, aynı sütunlardaki var
olan tüm filtreleri değiştirir. CALCULATE işlevi filtre bağımsız değişkeninden etkilenen yeni bağlam yalnızca filtre
bağımsız değişkeninin bir parçası olarak bahsedilen sütunlardaki mevcut filtreleri etkiler. CALCULATE işlevinin veya
diğer ilgili işlevlerin bağımsız değişkenlerinde bahsedilenlerin dışındaki sütun filtreleri etkilenmez ve değiştirilmez.
KEEPFILTERS işlevi bu davranışı değiştirmenizi sağlar. KEEPFILTERS işlevini kullandığınızda, geçerli bağlamdaki var
olan filtreler, filtre bağımsız değişkenlerinin sütunlarıyla karşılaştırılır ve bu bağımsız değişkenlerin kesişimi,
ifadenin değerlendirileceği bağlam olarak kullanılır. Herhangi bir sütunun üzerindeki net etkisi, her iki bağımsız
değişken kümesinin de uygulanmasıdır. Hem CALCULATE işlevindeki filtre bağımsız değişkenleri hem de
KEEPFILTER işlevinin bağımsız değişkenlerindeki filtreler uygulanır. Başka bir deyişle CALCULATE filtreleri geçerli
bağlamı değiştirirken KEEPFILTERS geçerli bağlama filtre ekler.
Örnek
Aşağıdaki örnekte KEEPFILTERS işlevinin CALCULATE veya CALCULATETABLE formülüyle birlikte kullanıldığı bazı
örnek senaryolar gösterilmiştir.
İlk üç ifade, karşılaştırmalar için kullanılacak basit verileri alır:
Bir sonraki ifade, Washington ve Oregon için İnternet Satışlarını hesaplar ancak KEEPFILTERS kullanır; Washington
ve İngiliz Kolumbiyası filtresi bir önceki bağlama aittir.
EVALUATE ROW(
"$$ in WA"
, CALCULATE('Internet Sales'[Internet Total Sales]
, 'Geography'[State Province Code]="WA"
)
, "$$ in WA and OR"
, CALCULATE('Internet Sales'[Internet Total Sales]
, 'Geography'[State Province Code]="WA"
|| 'Geography'[State Province Code]="OR"
)
, "$$ in WA and BC"
, CALCULATE('Internet Sales'[Internet Total Sales]
, 'Geography'[State Province Code]="WA"
|| 'Geography'[State Province Code]="BC"
)
, "$$ in WA and OR ??"
, CALCULATE(
CALCULATE('Internet Sales'[Internet Total Sales]
,'Geography'[State Province Code]="WA"
|| 'Geography'[State Province Code]="OR"
)
, 'Geography'[State Province Code]="WA"
|| 'Geography'[State Province Code]="BC"
)
, "$$ in WA !!"
, CALCULATE(
CALCULATE('Internet Sales'[Internet Total Sales]
, KEEPFILTERS('Geography'[State Province Code]="WA"
|| 'Geography'[State Province Code]="OR"
)
)
, 'Geography'[State Province Code]="WA"
|| 'Geography'[State Province Code]="BC"
)
)
Bu ifade AdventureWorks DW adlı örnek veritabanında değerlendirildiğinde aşağıdaki sonuçlar elde edilir.
SÜT UN DE ĞER
NOTE
Yukarıdaki sonuçlar, eğitim amacıyla tek bir satır yerine bir tablo halinde biçimlendirilmiştir.
İlk olarak [$$ in WA and OR ??] ifadesini inceleyelim. Dış CALCULATE ifadesinde Washington ve İngiliz
Kolumbiyası filtresi olmasına rağmen bu formülün Washington ve Oregon satışlarını nasıl döndürdüğünü merak
ediyor olabilirsiniz. Bu sorunun yanıtı, CALCULATE işlevinin varsayılan davranışının 'Geography'[State Province
Code] filtrelerini geçersiz kılması ve filtreler aynı sütuna uygulandığından kendi filtre bağımsız değişkenleriyle
değiştirmesidir.
Ardından [$$ in WA !!] ifadesine bakalım. Bağımsız değişken filtresinde Oregon ve dış CALCULATE ifadesinde
Washington ve İngiliz Kolumbiyası filtresi olmasına rağmen bu formülün yalnızca Washington satışlarını nasıl
döndürdüğünü merak ediyor olabilirsiniz. Bu sorunun yanıtı, KEEPFILTERS işlevinin CALCULATE işlevinin varsayılan
davranışını değiştirip ek bir filtre eklemesidir. Filtrelerin kesişimi kullanıldığından 'Geography'[State Province
Code]="WA" || 'Geography'[State Province Code]="BC") dış filtresi, 'Geography'[State Province
Code]="WA" || 'Geography'[State Province Code]="OR" filtre bağımsız değişkenine eklenmiştir. İki filtre de
aynı sütuna uygulandığından sonuçta elde edilen 'Geography'[State Province Code]="WA" filtresi, ifadenin
değerlendirilmesi sırasında uygulanan filtre olur.
Ayrıca bkz.
Filtre işlevleri (DAX)
CALCULATE işlevi (DAX)
CALCULATETABLE işlevi (DAX)
RELATED
8.05.2020 • 4 minutes to read
Sözdizimi
RELATED(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Geçerli satırla ilgili tek bir değer.
Açıklamalar
RELATED işlevi, geçerli tablo ve ilgili bilgileri içeren tablo arasında bir ilişki bulunmasını gerektirir. İstediğiniz
verileri içeren sütunu belirttiğinizde işlev, var olan çok-bir ilişkisini takip ederek ilgili tablodaki belirtilen sütunda
bulunan değeri getirir. İlişki yoksa oluşturmanız gerekir.
RELATED işlevi bir arama gerçekleştirdiğinde, uygulanmış olabilecek filtrelerden bağımsız olarak belirtilen
tablodaki tüm değerleri inceler.
NOTE
RELATED işlevinin bir satır bağlamı olması gerekir. Bu nedenle yalnızca geçerli satır bağlamının belirsiz olduğu hesaplanmış
sütun ifadesinde veya tablo tarama işlevi kullanan bir ifadede iç içe yerleştirilmiş bir işlev olarak kullanılabilir. SUMX gibi bir
tablo tarama işlevi, geçerli satır değerinin değerini alır ve daha sonra bu değerin örnekleri için başka bir tabloda arama yapar.
Örnek
Aşağıdaki örnekte, ABD'de yapılan satışları hariç tutan bir satış raporu oluşturmak için ABD Dışı İnternet Satışları
ölçüsü oluşturulmuştur. Ölçüyü oluşturmak için InternetSales_USD tablosu filtrelenerek SalesTerritory tablosunda
ABD'ye ait olan tüm satışlar hariç tutulmalıdır. ABD, SalesTerritory tablosundaki şu bölgelerde ülke olarak 5 kez
görünmektedir: Kuzeybatı, Kuzeydoğu, Orta, Güneybatı ve Güneydoğu.
İlk yaklaşım İnternet Satışları sütununu filtrelemek olacaktır. Ölçüyü oluşturmak için şunun gibi bir filtre ifadesi
eklenebilir:
FILTER('InternetSales_USD', 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryKey]
<>2 && 'InternetSales_USD'[SalesTerritoryKey]<>3 && 'InternetSales_USD'[SalesTerritoryKey]<>4 &&
'InternetSales_USD'[SalesTerritoryKey]<>5)
Ancak bu yaklaşım kolay değildir, yazım hatalarına açıktır ve ileride bölgelerin ayrılması durumunda çalışmayabilir.
Daha iyi bir yaklaşım, InternetSales_USD ile SalesTerritory arasındaki mevcut ilişkiyi kullanmak ve ülkenin ABD'den
farklı olmasını açık olarak belirtmek olacaktır. Bunu yapmak için şuna benzer bir filtre ifadesi oluşturun:
FILTER( 'InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
NOTE
Örnek çalışmazsa tablolar arasında bir ilişki oluşturmanız gerekebilir.
= SUMX(FILTER( 'InternetSales_USD'
, RELATED('SalesTerritory'[SalesTerritoryCountry])
<>"United States"
)
,'InternetSales_USD'[SalesAmount_USD])
Aşağıdaki tabloda, ABD Dışı İnternet Satışları ölçüsündeki filtre ifadesinin istendiği gibi çalıştığını kanıtlamak için
yalnızca her bölgeye ait toplam değerler gösterilmiştir.
Aşağıdaki tabloda bu ölçüyü bir PivotTable içinde kullanmanız durumunda elde edebileceğiniz nihai rapor
gösterilmiştir:
A B D DI Ş I İN T ERN ET
SAT I Ş L A RI SÜT UN ET IK ET L ERI
Ayrıca bkz.
RELATEDTABLE işlevi (DAX)
Filtre işlevleri (DAX)
RELATEDTABLE
8.05.2020 • 2 minutes to read
Sözdizimi
RELATEDTABLE(<tableName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Değer tablosu.
Açıklamalar
RELATEDTETABLE işlevi, verilerin filtrelendiği bağlamı değiştirir ve ifadeyi belirttiğiniz yeni bağlamda değerlendirir.
Mantıksal ifade içermeyen bu işlev, CALCULATETABLE işlevinin kısayoludur.
Örnek
Aşağıdaki örnekte RELATEDTABLE işlevi kullanılarak Ürün Kategorisi tablosundaki İnternet Satışları ile hesaplanmış
sütun oluşturulmaktadır.
Aşağıdaki tablo, buradaki kodun sonucunu göstermektedir.
Ürün Kategorisi Anahtarı Ürün Kategorisi Alternatif Ürün Kategorisi Adı İnternet Satışları
Anahtarı
2 2 Bileşenler
= SUMX( RELATEDTABLE('InternetSales_USD')
, [SalesAmount_USD])
Ayrıca bkz.
CALCULATETABLE işlevi (DAX)
Filtre işlevleri (DAX)
REMOVEFILTERS
8.05.2020 • 2 minutes to read
Sözdizimi
REMOVEFILTERS([<table> | <column>[, <column>[, <column>[,…]]]])
Parametreler
T ERIM TA N IM
Döndürülen değer
Yok. Açıklamalara bakın.
Açıklamalar
REMOVEFILTERS yalnızca filtreleri temizlemek için kullanılabilir, tablo döndürmez.
Örnek 1
DAX sorgusu
DEFINE
MEASURE FactInternetSales[TotalSales] = SUM(FactInternetSales[SalesAmount])
MEASURE FactInternetSales[%Sales] = DIVIDE([TotalSales], CALCULATE([TotalSales],REMOVEFILTERS()))
EVALUATE
SUMMARIZECOLUMNS(
ROLLUPADDISSUBTOTAL(DimProductCategory[EnglishProductCategoryName], "IsGrandTotal"),
"TotalSales", [TotalSales],
"%Sales", [%Sales]
)
ORDER BY
[IsGrandTotal] DESC, [TotalSales] DESC
Şunu döndürür:
Örnek 2
DAX sorgusu
DEFINE
MEASURE FactInternetSales[TotalSales] = SUM(FactInternetSales[SalesAmount])
MEASURE FactInternetSales[%Sales] = DIVIDE([TotalSales],
CALCULATE([TotalSales],REMOVEFILTERS(DimProductSubcategory[EnglishProductSubcategoryName])))
EVALUATE
SUMMARIZECOLUMNS(
DimProductCategory[EnglishProductCategoryName],
DimProductSubcategory[EnglishProductSubcategoryName],
"TotalSales", [TotalSales],
"%Sales", [%Sales]
)
ORDER BY
DimProductCategory[EnglishProductCategoryName] ASC,
DimProductSubcategory[EnglishProductSubcategoryName] ASC
Şunu döndürür:
columnName bağlamı yalnızca bir ayrı değeri içerecek şekilde filtrelendiğinde ilgili değeri döndürür. Aksi takdirde
alternateResult döndürür.
Söz dizimi
SELECTEDVALUE(<columnName>[, <alternateResult>])
Parametreler
T ERIM TA N IM
Döndürülen değer
columnName bağlamı yalnızca bir ayrı değeri içerecek şekilde filtrelendiğinde ilgili değer. Aksi takdirde
alternateResult.
Açıklamalar
SELECTEDVALUE(<columnName>, <alternateResult>) ile eşdeğer olan ifade,
IF(HASONEVALUE(<columnName>), VALUES(<columnName>), <alternateResult>) ifadesidir.
Örnek
Aşağıdaki DAX işlevi:
Şunu döndürür:
NA FALSE NA
Bağımsız değişken olarak sağlanan iki tablonun sol yarı birleşimini temsil eden bir tablo döndürür. Yarı birleşim,
ortak sütun adların ve ortak veri türüne göre belirlenen ortak sütunlar kullanılarak gerçekleştirilir. Birleştirilen
sütunlar, döndürülen tablodaki tamsayı türünde olan ve dizin içeren bir tablonun tek sütunu haline getirilir. Dizin,
belirtilen sıralama düzeninde sağ birleşim tablosu başvurusudur.
Sağlanan sağ/ikinci tabloda yer alan ve sağlanan sol/ilk tabloda bulunmayan sütunlar, döndürülen tabloya dahil
edilmez ve birleştirme işlemi için kullanılmaz.
Dizin 0'dan başlar (0 tabanlıdır) ve sağlanan sağ/ikinci birleşim tablosundaki her bir ek satır için bir artırılır. Dizin,
sağ/ikinci birleşim tablosu için belirtilen sıralama düzenini temel alır.
Söz dizimi
SUBSTITUTEWITHINDEX(<table>, <indexColumnName>, <indexColumnsTable>, [<orderBy_expression>, [<order>][,
<orderBy_expression>, [<order>]]…])
Parametreler
T ERIM TA N IM
indexColumnsTable Sol yarı birleşim için ikinci tablo. Bu, sol yarı birleşimin sağ
tarafındaki tablodur. İşlev yalnızca bu tablodaki değerleri
döndürür. Ayrıca bu tablonun sütunları (sütun adına göre) bu
işlev tarafından döndürülen tablodaki tek dizin sütunuyla
değiştirilir.
Döndürülen değer
Yalnızca indexColumnsTable tablosundaki değerleri içeren ve indexColumnsTable tablosundaki mevcut olan tüm
sütunlar (ada göre) yerine bir dizin sütunu içeren bir tablo.
Açıklamalar
Bu işlev, sonuçların sıralama düzeni konusunda bir garanti vermez.
USERELATIONSHIP
8.05.2020 • 4 minutes to read
Belirtilen hesaplamada kullanılacak ilişkinin columnName1 ile columnName2 arasındaki ilişki olmasını belirtir.
Söz dizimi
USERELATIONSHIP(<columnName1>,<columnName2>)
Parametreler
T ERIM TA N IM
columnName1 Standart DAX söz dizimi kullanılarak tam adıyla belirtilmiş olan
var olan bir sütunun adı. Genellikle kullanılacak ilişkinin çok
tarafını temsil eder. Bağımsız değişkenlerin ters sırada verilmesi
durumunda işlev bunları kullanmadan önce yerlerini değiştirir.
Bu bağımsız değişken bir ifade olamaz.
columnName2 Standart DAX söz dizimi kullanılarak tam adıyla belirtilmiş olan
var olan bir sütunun adı. Genellikle kullanılacak ilişkinin bir
tarafını veya arama tarafını temsil eder. Bağımsız değişkenlerin
ters sırada verilmesi durumunda işlev bunları kullanmadan
önce yerlerini değiştirir. Bu bağımsız değişken bir ifade olamaz.
Döndürülen değer
İşlev hiçbir değer döndürmez; işlev, hesaplama süresince yalnızca belirtilen ilişkiyi etkinleştirir.
Açıklamalar
USERELATIONSHIP yalnızca bağımsız değişken olarak filtre alan işlevlerde kullanılabilir, örneğin:
CALCULATE, CALCULATETABLE, CLOSINGBALANCEMONTH, CLOSINGBALANCEQUARTER,
CLOSINGBALANCEYEAR, OPENINGBALANCEMONTH, OPENINGBALANCEQUARTER,
OPENINGBALANCEYEAR, TOTALMTD, TOTALQTD ve TOTALYTD işlevleri.
Ölçümün dahil edildiği tablo için satır düzeyi güvenlik tanımlanması durumunda USERELATIONSHIP işlevi
kullanılamaz. Örneğin DimCustomer için satır düzeyi güvenlik tanımlanması durumunda
CALCULATE(SUM([SalesAmount]), USERELATIONSHIP(FactInternetSales[CustomerKey], DimCustomer[CustomerKey]))
bir hata döndürür.
USERELATIONSHIP modeldeki mevcut ilişkileri kullanır ve ilişkileri bitiş noktası sütunlarına göre tanımlar.
USERELATIONSHIP işlevinde bir ilişkinin durumu önemli değildir. Başka bir deyişle ilişkinin etkin olup
olmaması, işlevin kullanımını etkilemez. İlişki devre dışı olsa bile kullanılır ve modelde mevcut olabilecek
ancak işlev bağımsız değişkenlerinde belirtilmeyen diğer etkin ilişkileri geçersiz kılar.
Bağımsız değişken olarak adlandırılan sütunlardan herhangi biri ilişkinin parçası değilse veya bağımsız
değişkenler farklı ilişkilere aitse bir hata döndürülür.
Bir hesaplamada A tablosunu B tablosuyla birleştirmek için birden fazla ilişki gerekiyorsa her ilişkinin farklı
bir USERELATIONSHIP işlevinde belirtilmesi gerekir.
CALCULATE ifadelerinin iç içe yerleştirilmesi ve birden fazla CALCULATE ifadesinde USERELATIONSHIP
işlevi bulunması halinde çakışma veya belirsizlik halinde en içteki USERELATIONSHIP işlevi uygulanır.
En fazla 10 USERELATIONSHIP işlevi iç içe yerleştirilebilir ancak ifadenizin iç içe yerleştirme düzeyi daha
fazla olabilir. Örneğin şu ifadede iç içe geçmiş 3 düzey vardır ancak yalnızca 2 USEREALTIONSHIP işlevi
kullanılmıştır:
=CALCULATE(CALCULATE( CALCULATE( <anyExpression>, USERELATIONSHIP( t1[colA], t2[colB])),
t99[colZ]=999), USERELATIONSHIP( t1[colA], t2[colA]))
.
Örnek
Aşağıdaki örnekte InternetSales ile DateTime tabloları arasındaki varsayılan etkin ilişkinin nasıl geçersiz kılınacağı
gösterilmiştir. Varsayılan ilişki InternetSales tablosunun OrderDate sütunu ile DateTime tablosunun Date sütunu
arasındadır.
İnternet satışlarının toplamını hesaplamak ve geleneksel OrderDate yerine ShippingDate ile dilimlemeye izin
vermek için şu ifadeyi kullanarak [InternetSales by ShippingDate] adlı bir ölçü oluşturmanız gerekir:
Yeni ölçünüzü sağ bölmedeki Değerler alanına, InternetSales[ShippingDate] sütununu da Satır Etiketleri alanına
sürükleyin. Bu sayede İnternet Satışları genellikle bu örneklerde gösterilen sipariş tarihi yerine gönderim tarihine
göre dilimlenir.
Bu örneğin çalışması için InternetSales[ShipmentDate] ile DateTime[Date] arasında ilişki bulunması gerekir ve bu
ilişkinin etkin olmasına gerek yoktur. Ayrıca InternetSales[OrderDate] ve DateTime[Date] arasında da ilişki
bulunması ve bunun etkin olması gerekir.
VALUES
8.05.2020 • 5 minutes to read
Giriş parametresi bir sütun adı olduğunda, tek sütunlu bir tablo veya belirtilen sütundaki birbirinden farklı
değerleri içeren bir tablo döndürür. Yinelenen değerler kaldırılır ve yalnızca benzersiz değerler döndürülür. BLANK
değer eklenebilir. Giriş parametresi bir tablo adı olduğunda, belirtilen tablodaki satırları döndürür. Yinelenen
satırlar korunur. BLANK satır eklenebilir.
NOTE
Bu işlev, değerleri bir çalışma sayfasındaki bir hücreye veya sütuna döndürmek için kullanılamaz. Bunun yerine bir formül
içine ekleyerek ara işlev olarak kullanabilir, sayılabilecek veya diğer değerleri filtrelemek ya da toplamak için kullanılabilecek
benzersiz değerlerden oluşan bir liste elde edebilirsiniz.
Sözdizimi
VALUES(<TableNameOrColumnName>)
Parametreler
T ERIM TA N IM
TableName veya ColumnName Benzersiz değerlerin döndürüleceği bir sütun veya satırların
döndürüleceği bir tablo.
Döndürülen değer
Giriş parametresi bir sütun adı olduğunda tek sütunlu bir tablodur. Giriş parametresi bir tablo adı olduğunda, aynı
sütunlardan oluşan bir tablo döndürülür.
Açıklamalar
VALUES işlevini PivotTable gibi filtrelenmiş olan bir bağlamda kullandığınızda, VALUES tarafından döndürülen
benzersiz değerler, filtreden etkilenir. Örneğin Bölgeye göre filtreleme yapıp Şehir değerlerinin listesini
döndürdüğünüzde liste yalnızca filtrenin izin verdiği bölgelerdeki şehirleri kapsar. Mevcut filtrelerden bağımsız
olarak tüm şehirleri döndürmek için ALL işlevini kullanarak tablodaki filtreleri kaldırmanız gerekir. İkinci örnekte
ALL ile VALUES işlevinin birlikte nasıl kullanılacağı gösterilmiştir.
İlgili işlevler
Çoğu senaryoda, bağımsız değişken bir sütun adı olduğunda VALUES işlevinin sonuçları DISTINCT işlevinin
sonuçlarıyla aynıdır. İki işlev de yinelenenleri kaldırır ve belirtilen sütundaki olası değerlerin listesini döndürür.
Ancak VALUES işlevi, boş değer de döndürebilir. Bu boş değer, ilişkili bir tablodaki benzersiz değerleri aradığınızda
ancak ilişkide kullanılan değerlerden birinin tabloların birinde olmadığı durumlarda kullanışlıdır. Bu durum,
veritabanı terminolojisinde bilgi tutarlılığı ihlali olarak adlandırılır. Tablolardan biri güncelleştirilirken diğerinin
güncelleştirilmemesi durumunda verilerde bu tür uyuşmazlıklar olabilir.
Bağımsız değişken bir tablo adı olduğunda VALUES işlevinin sonucu, bilgi tutarlılığı ihlali olması durumunda
belirtilen tablodaki tüm satırlara ek olarak boş bir satır döndürür. DISTINCT işlevi, yinelenen satırları kaldırır ve
belirtilen tablodaki benzersiz satırları döndürür.
NOTE
DISTINCT işlevi, bağımsız değişken olarak sütun adı veya geçerli bir tablo ifadesi alır ancak VALUES işlevi, bağımsız değişken
olarak yalnızca sütun adı veya tablo adı alır.
Aşağıdaki tabloda bilgi tutarlılığı korunmadığında iki ilişkili tablo arasında oluşabilecek uyuşmazlık gösterilmiştir.
Bu tabloları içeren PivotTable'dan tarih listesini döndürmek için DISTINCT işlevini kullanmanız durumunda yalnızca
iki tarih döndürülür. Ancak VALUES işlevini kullanırsanız iki tarihe ek olarak boş bir üye de döndürülür. Ayrıca
Satışlarım tablosunda olup Siparişlerim tablosunda karşılığı olmayan satırlar bu bilinmeyen üye ile "eşleştirilir".
Örnek
Aşağıdaki formül, Ürün Kategorisi Adlarını içeren bir raporda kullanıldığında benzersiz faturaları (satış
siparişlerini) sayar ve aşağıdaki sonuçları verir:
=COUNTROWS(VALUES('InternetSales_USD'[SalesOrderNumber]))
Şunu döndürür:
Aksesuarlar 18.208
Bisikletler 15.205
Kıyafet 7.461
Ayrıca bkz.
FILTER işlevi (DAX)
COUNTROWS işlevi (DAX)
Filtre işlevleri (DAX)
Bilgi işlevleri
8.05.2020 • 2 minutes to read
DAX bilgi işlevleri, bağımsız değişken olarak sağlanan hücreye veya satıra bakar ve değerin beklenen türle eşleşip
eşleşmediğini bildirir. Örneğin ISERROR işlevi, başvurduğunuz hedefte hata olması durumunda TRUE değerini
döndürür.
Bu kategoride
İŞ L EV A Ç IK L A M A
ISERROR Değerin bir hata olup olmadığını denetler ve TRUE veya FALSE
değerini döndürür.
ISEVEN Sayı çift ise TRUE, tek ise FALSE değerini döndürür.
ISNONTEXT Değerin metin dışında (boş hücreler metin değildir) bir değer
olup olmadığını denetler ve TRUE veya FALSE değerini
döndürür.
ISNUMBER Değerin bir sayı olup olmadığını denetler ve TRUE veya FALSE
değerini döndürür.
Başvurulan tüm sütunların değeri mevcutsa veya bu sütunlarda yer alıyorsa true, aksi takdirde false döndürür.
Sözdizimi
CONTAINS(<table>, <columnName>, <value>[, <columnName>, <value>]…)
Parametreler
T ERIM TA N IM
Döndürülen değer
Belirtilen değer karşılık gelen columnName içinde bulunursa veya bu sütunlarda mevcutsa TRUE , aksi halde
FALSE döndürülür.
Açıklamalar
columnName ve değer bağımsız değişkenlerinin çift olarak sağlanması gerekir, aksi takdirde bir hata
döndürülür.
columnName, belirtilen tabloya veya tablo ile ilişkili bir tabloya ait olmalıdır.
columnName, ilişkili bir tabloda yer alan sütuna başvuruyorsa tam ad kullanılmalıdır, aksi takdirde bir hata
döndürülür.
Örnek
Aşağıdaki örnekte 214 numaralı ürünün 11185 numaralı müşteriye İnternet üzerinden satılıp satılmadığını belirten
bir hesaplanan ölçüm oluşturulur.
Sözdizimi
CUSTOMDATA()
Döndürülen değer
Bağlantı dizesindeki CustomData özelliğinin içeriği.
CustomData özelliği bağlantı anında tanımlanmamışsa boş olur.
Özel durumlar
Açıklamalar
Örnek
Aşağıdaki DAX kodu, CustomData özelliğinin "OK" olarak ayarlanıp ayarlanmadığını doğrular.
=IF(CUSTOMDATA()="OK", "Correct Custom data in connection string", "No custom data in connection string
property or unexpected value")
IN İşleci/CONTAINSROW işlevi
8.05.2020 • 2 minutes to read
Bir tablo içinde değer satırı varsa veya mevcutsa TRUE, yoksa FALSE döndürür. IN işleci ile CONTAINSROW işlevi
arasındaki tek fark söz dizimidir.
IN İşleci
Söz dizimi
<scalarExpr> IN <tableExpr>
( <scalarExpr1>, <scalarExpr2>, … ) IN <tableExpr>
CONTAINSROW işlevi
Söz dizimi
Parametreler
T ERIM TA N IM
Döndürülen değer
TRUE veya FALSE.
Açıklamalar
scalarExprN sayısı ile tableExpr içindeki sütun sayısı aynı olmalıdır.
IN işleci ve CONTAINSROW işlevi, = işlecinden farklı olarak katı karşılaştırma gerçekleştirir. Örneğin BLANK değeri
0 ile eşleşmez.
NOT IN, bir DAX işleci değildir. IN işlecinin mantıksal olumsuzunu gerçekleştirmek için ifadenin tamamının önüne
NOT ekleyin. Örneğin, NOT [Renk] IN { "Kırmızı", "Sarı", "Mavi" }.
Örnekler
Örnek 1
Aşağıdaki eşdeğer DAX sorguları:
ve
Mavi
Red
Yellow
Örnek 2
Aşağıdaki eşdeğer DAX sorguları:
ve
Şunu döndürür:
Siyah L
Örnek 3
Aşağıdaki eşdeğer DAX sorguları:
ve
Siyah
Gri
Çoklu
NA
Gümüş
Gümüş\Siyah
Beyaz
ISBLANK
12.05.2020 • 2 minutes to read
Değerin boş olup olmadığını denetler ve TRUE veya FALSE değerini döndürür.
Söz dizimi
ISBLANK(<value>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Değer boş ise TRUE, değilse FALSE Boole değeri.
Örnek
Bu formül, bir önceki yıla oranla gerçekleşen satış artış veya düşüşlerini hesaplar. Örnekte sıfıra bölme hatasıyla
karşılaşmamak için IF işlevi ile bir önceki yılın satış rakamları denetlenmektedir.
=IF( ISBLANK('CalculatedMeasures'[PreviousYearTotalSales])
, BLANK()
, ( 'CalculatedMeasures'[Total Sales]-'CalculatedMeasures'[PreviousYearTotalSales] )
/'CalculatedMeasures'[PreviousYearTotalSales])
Sonuç
Ö N C EK I Y IL IN TO P L A M Ö N C EK I Y IL IN SAT I Ş L A RIN IN
SAT IR ET IK ET L ERI TO P L A M SAT I Ş L A R SAT I Ş L A RI O RA N I
2005 $10.209.985,08
Ayrıca bkz.
Bilgi işlevleri (DAX)
ISERROR
8.05.2020 • 2 minutes to read
Değerin bir hata olup olmadığını denetler ve TRUE veya FALSE değerini döndürür.
Sözdizimi
ISERROR(<value>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Değer bir hata ise TRUE, değilse FALSE Boole değeri.
Örnek
Aşağıdaki örnek, İnternetten yapılan toplam satış miktarının toplam bayi satışı miktarına olan oranını hesaplar.
ISERROR işlevi, sıfıra bölme gibi hataları denetlemek için kullanılır. Hata varsa boş değer döndürülür, yoksa oran
döndürülür.
= IF( ISERROR(
SUM('ResellerSales_USD'[SalesAmount_USD])
/SUM('InternetSales_USD'[SalesAmount_USD])
)
, BLANK()
, SUM('ResellerSales_USD'[SalesAmount_USD])
/SUM('InternetSales_USD'[SalesAmount_USD])
)
Ayrıca bkz.
Bilgi işlevleri (DAX)
IFERROR işlevi (DAX)
IF işlevi (DAX)
ISEVEN
8.05.2020 • 2 minutes to read
Sözdizimi
ISEVEN(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Sayı çift ise TRUE, tek ise FALSE değerini döndürür.
Açıklamalar
Sayı, sayısal olmayan bir değerse ISEVEN, #VALUE! hata değerini döndürür.
ISINSCOPE
8.05.2020 • 2 minutes to read
Söz dizimi
ISINSCOPE(<columnName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Belirtilen sütun düzey hiyerarşisindeki düzey olduğunda TRUE döndürür.
Örnek
DEFINE
MEASURE FactInternetSales[% of Parent] =
SWITCH (TRUE(),
ISINSCOPE(DimProduct[Subcategory]),
DIVIDE(
SUM(FactInternetSales[Sales Amount]),
CALCULATE(
SUM(FactInternetSales[Sales Amount]),
ALLSELECTED(DimProduct[Subcategory]))
),
ISINSCOPE(DimProduct[Category]),
DIVIDE(
SUM(FactInternetSales[Sales Amount]),
CALCULATE(
SUM(FactInternetSales[Sales Amount]),
ALLSELECTED(DimProduct[Category]))
),
1
) * 100
EVALUATE
SUMMARIZECOLUMNS
(
ROLLUPADDISSUBTOTAL
(
DimProduct[Category], "Category Subtotal",
DimProduct[Subcategory], "Subcategory Subtotal"
),
TREATAS(
{"Bike Racks", "Bike Stands", "Mountain Bikes", "Road Bikes", "Touring Bikes"},
DimProduct[Subcategory]),
"Sales", SUM(FactInternetSales[Sales Amount]),
"% of Parent", [% of Parent]
)
ORDER BY
[Category Subtotal] DESC, [Category],
[Subcategory Subtotal] DESC, [Subcategory]
Şunu döndürür:
Ayrıca bkz.
SUMMARIZECOLUMNS işlevi (DAX)
CALCULATE işlevi (DAX)
ISLOGICAL
9.05.2020 • 2 minutes to read
Değerin mantıksal bir değer (TRUE veya FALSE) olup olmadığını denetler ve TRUE veya FALSE değerini döndürür.
Söz dizimi
ISLOGICAL(<value>)
Parametreler
T ERIM TA N IM
Örnek
ISLOGICAL işlevinin davranışı aşağıdaki üç örnekte gösterilmiştir.
Ayrıca bkz.
Bilgi işlevleri (DAX)
ISNONTEXT
8.05.2020 • 2 minutes to read
Değerin metin dışında (boş hücreler metin değildir) bir değer olup olmadığını denetler ve TRUE veya FALSE
değerini döndürür.
Sözdizimi
ISNONTEXT(<value>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Değer metin veya boş değilse TRUE, değer metin ise FALSE.
Açıklamalar
Boş dize, metin olarak değerlendirilir.
Örnek
Aşağıdaki örneklerde, ISNONTEXT işlevinin davranışı gösterilmektedir.
//RETURNS: Is Non-Text
=IF(ISNONTEXT(1), "Is Non-Text", "Is Text")
//RETURNS: Is Non-Text
=IF(ISNONTEXT(BLANK()), "Is Non-Text", "Is Text")
//RETURNS: Is Text
=IF(ISNONTEXT(""), "Is Non-Text", "Is Text")
Ayrıca bkz.
Bilgi işlevleri (DAX)
ISNUMBER
9.05.2020 • 2 minutes to read
Değerin bir sayı olup olmadığını denetler ve TRUE veya FALSE değerini döndürür.
Sözdizimi
ISNUMBER(<value>)
Parametreler
T ERIM TA N IM
Örnek
ISNUMBER işlevinin davranışı aşağıdaki üç örnekte gösterilmiştir.
//RETURNS: Is number
=IF(ISNUMBER(0), "Is number", "Is Not number")
//RETURNS: Is number
=IF(ISNUMBER(3.1E-1),"Is number", "Is Not number")
Ayrıca bkz.
Bilgi işlevleri (DAX)
ISODD
8.05.2020 • 2 minutes to read
Söz dizimi
ISODD(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Sayı tek ise TRUE, çift ise FALSE değerini döndürür.
Açıklamalar
Sayı, sayısal olmayan bir değerse ISODD, #VALUE! hata değerini döndürür.
ISONORAFTER
8.05.2020 • 2 minutes to read
"Start At" yan tümcesinin davranışını taklit eden ve tüm koşul parametrelerini karşılayan bir satır için true değerini
döndüren bir boole işlevidir.
Bu işlev, üçlü değişken alır. Üçlüdeki ilk iki değer, karşılaştırılacak ifadelerdir ve üçüncü parametre sıralama düzenini
belirler. Sıralama düzeni artan (varsayılan) veya azalan olabilir.
Sıralama düzenine göre ilk parametre ikinci parametreyle karşılaştırılır. Sıralama düzeni artan ise yapılacak
karşılaştırma, ilk parametrenin ikinci parametreye eşit veya ondan büyük olup olmadığıdır. Sıralama düzeni azalan
ise yapılacak karşılaştırma, ikinci parametrenin ilk parametreye eşit veya ondan küçük olup olmadığıdır.
Sözdizimi
ISONORAFTER(<scalar_expression>, <scalar_expression>[, sort_order [, <scalar_expression>, <scalar_expression>
[, sort_order]]…)
Parametreler
T ERIM TA N IM
skaler ifade Sütun başvurusu, tamsayı veya dize değeri gibi skaler değer
döndüren bir ifade. Genellikle ilk parametre bir sütun
başvurusu, ikinci parametre ise skaler bir değerdir.
sıralama düzeni (isteğe bağlı) Sütunun sıralandığı düzen. Artan (ASC) veya
azalan (DEC) olabilir. Varsayılan olarak, sıralama artan
düzendedir.
Döndürülen değer
True veya false.
Örnek
Tablo adı: "Bilgi"
ÜL K E DURUM SAY I TO P L A M
IND JK 20 800
IND` MH 25 1000
IND WB 10 900
ABD CA 5 500
ABD WA 10 900
FILTER(Info, ISONORAFTER(Info[Country], “IND”, ASC, Info[State], “MH”, ASC))
ISTEXT
8.05.2020 • 2 minutes to read
Değerin metin olup olmadığını denetler ve TRUE veya FALSE değerini döndürür.
Sözdizimi
ISTEXT(<value>)
Parametreler
T ERIM TA N IM
Örnek
Aşağıdaki örneklerde, ISTEXT işlevinin davranışı gösterilmektedir.
//RETURNS: Is Text
=IF(ISTEXT("text"), "Is Text", "Is Non-Text")
//RETURNS: Is Text
=IF(ISTEXT(""), "Is Text", "Is Non-Text")
//RETURNS: Is Non-Text
=IF(ISTEXT(1), "Is Text", "Is Non-Text")
//RETURNS: Is Non-Text
=IF(ISTEXT(BLANK()), "Is Text", "Is Non-Text")
Ayrıca bkz.
Bilgi işlevleri (DAX)
LOOKUPVALUE
8.05.2020 • 2 minutes to read
Sözdizimi
LOOKUPVALUE( <result_columnName>, <search_columnName>, <search_value>[, <search_columnName>, <search_value>]…
[, <alternateResult>])
Parametreler
T ERIM TA N IM
result_columnName Döndürmek istediğiniz değeri içeren var olan bir sütunun adı.
Sütun adı standart DAX söz dizimi kullanılarak belirtilmelidir
(genellikle tam ad kullanılır). Bu değer bir ifade olamaz.
Döndürülen değer
sonuç_sütunu değerinin arama_sütunu ve arama_değeri ile eşleşen satırları.
Tüm arama değerlerini karşılayan bir eşleşme yoksa, BLANK veya alternateResult döndürülür. Başka bir deyişle
ölçütlerin yalnızca bir bölümünün eşleşmesi durumunda işlev bir arama değeri döndürmez.
Arama değerleriyle eşleşen birden fazla satır varsa ve her durumda sonuç_sütunu değerleri aynıysa ilgili değer
döndürülür. Ancak sonuç_sütunu farklı değerler döndürürse bir hata veya belirtilmişse alternateResult döndürülür.
Açıklamalar
Örnek
Aşağıdaki örnek, "Mountain-400-W Silver, 46" bisiklet modeli için SafetyStocklLevel değerini döndürür.
=LOOKUPVALUE(Product[SafetyStockLevel], [ProductName], " Mountain-400-W Silver, 46")
USERNAME
8.05.2020 • 2 minutes to read
Bağlantı sırasında sisteme iletilen kimlik bilgilerinden alınan etki alanı adını ve kullanıcı adını döndürür.
Sözdizimi
USERNAME()
Parametreler
Bu ifadede parametre yok.
Döndürülen değer
Bağlantı sırasında sisteme iletilen kimlik bilgilerinden alınan kullanıcı adı
Örnek
Aşağıdaki kod, kullanıcı adının UsersTable içinde olup olmadığını doğrular.
Azure AD veya güvenlik tanımlayıcısından (SID) geçerli kullanıcının nesne kimliğini döndürür.
Söz dizimi
USEROBJECTID()
Parametreler
Bu ifadede parametre yok.
Döndürülen değer
Power BI için Azure AD veya Azure Analysis Services modelleri ya da SQL Server Analysis Services modelleri için
SID’den döndürülen mevcut kullanıcı nesne kimliği değeri.
USERPRINCIPALNAME
8.05.2020 • 2 minutes to read
Sözdizimi
USERPRINCIPALNAME()
Parametreler
Bu ifadede parametre yok.
Döndürülen değer
Bağlantı zamanındaki UserPrincipalName değeri.
Mantıksal işlevler
8.05.2020 • 2 minutes to read
Mantıksal işlevler, bir ifade üzerinde işlem gerçekleştirir ve bu ifadedeki değerlerle veya kümelerle ilgili bilgi
döndürür. Örneğin, bir ifadenin sonucunu denetlemek ve koşullu sonuçlar oluşturmak için IF işlevini
kullanabilirsiniz.
Bu kategoride
İŞ L EV A Ç IK L A M A
SWITCH Bir ifadeyi bir değer listesine göre değerlendirir ve birden çok
olası sonuç ifadesinden birini döndürür.
İki bağımsız değişkenin de TRUE olup olmadığını denetler ve iki bağımsız değişken de TRUE ise TRUE döndürür.
Aksi halde false döndürür.
Söz dizimi
AND(<logical1>,<logical2>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Test ettiğiniz değerlerin birleşimine bağlı olarak true veya false döndürür.
Açıklamalar
DAX içindeki AND işlevi yalnızca iki (2) bağımsız değişken kabul eder. Birden fazla ifadede AND işlemi
gerçekleştirmeniz gerekiyorsa hesaplama dizisi oluşturabilir veya daha da iyisi AND işlecini ( && ) kullanarak
tümünü birleştirip daha basit bir ifade elde edebilirsiniz.
Örnek 1
Aşağıdaki formülde AND işlevinin söz dizimi gösterilmiştir.
=IF(AND(10 > 9, -10 < -1), "All true", "One or more false"
AND işlevine bağımsız değişken olarak geçirilen iki koşul da true olduğundan formül "All True" değerini döndürür.
Örnek 2
Aşağıdaki örnekte AND işlevi iç içe yerleştirilmiş formüllerde kullanılarak iki hesaplama kümesi aynı anda
karşılaştırılmıştır. Formül her bir ürün kategorisi için İnternet kanalı üzerinden mevcut yıl ve geçen yıl yapılan
satışların aynı döneme ait Bayi kanalı satışlarından daha fazla olup olmadığını belirlemektedir. İki koşul da her bir
kategori için true olduğunda formül "İnternet hiti" değerini döndürmektedir.
SÜT UN
A N D I Ş L EVI ET IK ET L ERI
Bisiklet Şortu
Bisiklet
Taşıyıcıları
Alt Kadrolar
Frenler
Şapkalar
Zincirler
Temizleyiciler
Mil Setleri
Dişliler
Çatallar
Eldivenler
Gidonlar
Kulaklıklar
Kasklar
Hidrasyon
Paketleri
Formalar
Işıklar
Kilitler
Dağ Bisikletleri
SÜT UN
A N D I Ş L EVI ET IK ET L ERI
Dağ Kadroları
Çantalar
Pedallar
Pompalar
Yol Bisikletleri
Yol Kadroları
Seleler
Şortlar
Çoraplar
Taytlar
Gezi
Bisikletleri
Gezi Kadroları
Yelekler
Tekerlekler
Genel Toplam
Ayrıca bkz.
Mantıksal işlevler (DAX)
COALESCE
26.05.2020 • 2 minutes to read
BLANK olarak değerlendirilmeyen ilk ifadeyi döndürür. Tüm ifadeler BLANK olarak değerlendirilirse BLANK
döndürülür.
Söz dizimi
COALESCE(<expression>, <expression>[, <expression>]…)
Parametreler
T ERIM TA N IM
Döndürülen değer
Deyimlerin birinden gelen skaler bir değer veya tüm ifadeler BLANK olarak değerlendiriliyorsa BLANK.
Açıklamalar
Giriş ifadeleri farklı veri türlerinde olabilir.
Örnek 1
Aşağıdaki DAX işlevi:
Örnek 2
Şu DAX ifadesi:
= COALESCE(SUM(FactInternetSales[SalesAmount]), 0)
FactInternetSales tablosunun SalesAmount sütunundaki tüm değerlerin toplamını veya 0 döndürür. Bu, daha
sonra toplam satışların BLANK değerlerini 0 değerine dönüştürmek için kullanılabilir.
FALSE
8.05.2020 • 2 minutes to read
Söz dizimi
FALSE()
Döndürülen değer
Her zaman FALSE.
Açıklamalar
FALSE sözcüğü de FALSE mantıksal değeri olarak yorumlanır.
Örnek
Formül, 'InternetSales_USD'[SalesAmount_USD] sütunundaki değer 200000'den küçük veya ona eşit olduğunda
FALSE mantıksal değerini döndürür.
SÜT UN
T RUE- FA L SE ET IK ET L ERI
Ayrıca bkz.
TRUE işlevi (DAX)
NOT işlevi (DAX)
IF işlevi (DAX)
DAX işlevi başvurusu
IF
8.05.2020 • 3 minutes to read
İlk bağımsız değişkende belirtilen koşulun karşılanıp karşılanmadığını denetler. Koşul TRUE ise bir değeri, FALSE
ise başka bir değeri döndürür.
Sözdizimi
IF(<logical_test>,<value_if_true>[, <value_if_false>])
Parametreler
T ERIM TA N IM
mantıksal_test TRUE veya FALSE sonucu verebilen herhangi bir değer veya
ifade.
Döndürülen değer
Bir ifade tarafından döndürülebilecek herhangi bir değer türü.
Açıklamalar
İfadede başvurulan değer bir sütunsa, IF geçerli satıra karşılık gelen değeri döndürür.
IF işlevi, value_if_true ve value_if_false farklı değer türlerindeyse değişken veri türü döndürebilir. Ancak hem
value_if_true hem de value_if_false sayısal veri türlerindeyse işlev, tek bir veri türü döndürmeye çalışır. İkinci
durumda IF işlevi, veri türlerini her iki değere de uygun olması için örtük olarak dönüştürür. Örneğin
IF(<condition>,TRUE(),0) formülü TRUE veya 0 döndürür ancak IF(<condition>,1.0,0) formülü, value_if_false
tam sayı veri türünde olsa bile yalnızca ondalık değerler döndürür. Örtük veri türü dönüştürmesi hakkında daha
fazla bilgi için bkz. Veri türleri.
Örnek
Aşağıdaki örnek, FactCallCenter tablosunun Calls sütunundaki sayıyı değerlendiren iç içe geçmiş IF işlevlerini
kullanır. İşlet şu şekilde etiket ataması yapar: Çağrı sayısı 200'ün altındaysa dü şük , çağrı sayısı 200 ile 300
arasındaysa or ta , diğer tüm değerler için yüksek .
=IF([Calls]<200,"low",IF([Calls]<300,"medium","high"))
Örnek
Aşağıdaki örnek, ProspectiveBuyer tablosundaki sütunları kullanarak California bölgesindeki potansiyel
müşterileri içeren şehirlerin bir listesini alır. Listenin evli veya çocuklu kişileri hedefleyecek bir kampanya
planlaması için kullanılması düşünüldüğünden IF işlevindeki koşul, [MaritalStatus] ve [NumberChildrenAtHome]
sütunlarının değerini denetler ve koşullardan biri karşılanırsa ve müşteri California bölgesindeyse şehri belirtir.
Aksi takdirde boş dize sonucu verir.
AND (&&) ve OR (||) işleçlerinin kullanılacağı sırayı denetlemek için ayraçların kullanıldığına dikkat edin. Ayrıca
value_if_false için herhangi bir değer belirtilmemiştir. Bu nedenle işlev varsayılan değer olan boş dizeyi
döndürür.
Ayrıca bkz.
TRUE işlevi (DAX)
FALSE işlevi (DAX)
NOT işlevi (DAX)
IF işlevi (DAX)
DAX işlevi başvurusu
IF.EAGER
8.05.2020 • 2 minutes to read
Bir koşula uyulup uyulmadığını denetler ve TRUE ise bir değer, FALSE ise başka bir değer döndürür. Eager
yürütmesini kullanır.
Söz dizimi
IF.EAGER ( <LogicalTest>, <ResultIfTrue> [, <ResultIfFalse>] )
Parametreler
T ERIM TA N IM
LogicalTest TRUE veya FALSE sonucu verebilen herhangi bir değer veya
ifade.
Döndürülen değer
Bir ifade tarafından döndürülebilecek herhangi bir değer türü.
IFERROR
8.05.2020 • 2 minutes to read
Bir ifadeyi değerlendirir ve ifade bir hata döndürürse belirtilen değeri döndürür; aksi takdirde ifade değerini
döndürür.
Söz dizimi
IFERROR(value, value_if_error)
Parametreler
T ERIM TA N IM
Döndürülen değer
de ğer ile aynı türde bir skaler değer.
Açıklamalar
IFERROR işlevini kullanarak bir ifadedeki hataları yakalayabilir ve düzeltebilirsiniz.
de ğer veya hata_de ğeri boş bir hücreyse IFERROR bunu boş dize değeri ("") olarak kabul eder.
IFERROR işlevi IF işlevini temel alır ve aynı hata iletilerini kullanır ancak daha az bağımsız değişkene sahiptir.
IFERROR işlevi ile IF işlevi arasındaki ilişki şu şekildedir:
IFERROR(A,B) := IF(ISERROR(A), B, A)
A ve B için döndürülen değerlerin aynı veri türüne sahip olması gerektiğini unutmayın. Bu nedenle de ğer için
kullanılan sütun veya ifade ile hata_de ğeri için döndürülen değer aynı veri türüne sahip olmalıdır.
Örnek
Aşağıdaki örnek, 25/0 ifadesinin hata döndürmesi durumunda 9999 sayısını döndürür. İfadenin hata dışında bir
değer döndürmesi durumunda bu değer çağırma ifadesine geçirilir.
=IFERROR(25/0,9999)
Ayrıca bkz.
Mantıksal işlevler (DAX)
IN
8.05.2020 • 2 minutes to read
İlişkili giriş tablosunun en az bir satırında skaler değer görünmesi halinde True döndürür.
Sözdizimi
IN
Parametreler
T ERIM TA N IM
skaler ifade
tablo ifadesi
Döndürülen değer
True
Açıklamalar
Hiçbiri
Örnek
Filtered Sales:=CALCULATE (
[Internet Total Sales], 'Product'[Color] IN { "Red", "Blue", "Black" }
)
Ayrıca bkz.
NOT
8.05.2020 • 2 minutes to read
FALSE değerini TRUE değerine veya TRUE değerini FALSE değerine dönüştürür.
Sözdizimi
NOT(<logical>)
Parametreler
T ERIM TA N IM
mantıksal TRUE veya FALSE sonucu verebilen bir değer veya ifade.
Döndürülen değer
TRUE veya FALSE.
Örnek
Aşağıdaki örnek, IF işlevini göstermek için oluşturulan hesaplanmış sütundaki değerleri alır. Bu örnekte
hesaplanmış sütun, varsayılan Calculated Column1 adına sahiptir ve şu formülü içerir:
=IF([Orders]<300,"true","false")
Formül, [Orders] sütunundaki değeri denetler ve sipariş sayısının 300'ün altında olması durumunda "true"
döndürür.
Şimdi Calculated Column2 adlı yeni bir hesaplanmış sütun oluşturun ve aşağıdaki formülü yazın.
=NOT([CalculatedColumn1])
Calculated Column1 içindeki her bir satır için "true" ve "false" değerleri, TRUE veya FALSE mantıksal değerleri
olarak yorumlanır ve NOT işlevi, bu değerin mantıksal tersini döndürür.
Ayrıca bkz.
TRUE işlevi (DAX)
FALSE işlevi (DAX)
IF işlevi (DAX)
DAX işlevi başvurusu
OR
8.05.2020 • 3 minutes to read
TRUE değerini döndürmek için bağımsız değişkenlerden birinin TRUE olup olmadığını denetler. Her iki bağımsız
değişken de FALSE ise işlev FALSE döndürür.
Sözdizimi
OR(<logical1>,<logical2>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Boole değeri. İki bağımsız değişkenden biri TRUE olduğunda değer TRUE, iki bağımsız değişken birden FALSE
olduğunda değer FALSE olur.
Açıklamalar
DAX içindeki OR işlevi yalnızca iki (2) bağımsız değişken kabul eder. Birden fazla ifadede OR işlemi
gerçekleştirmeniz gerekiyorsa hesaplama dizisi oluşturabilir veya daha da iyisi OR işlecini ( || ) kullanarak tümünü
birleştirip daha basit bir ifade elde edebilirsiniz.
İşlev, ilk TRUE bağımsız değişkenine kadar olan bağımsız değişkenleri değerlendirir ve ardından TRUE döndürür.
Örnek
Aşağıdaki örnek, Circle of Excellence'a ait olan satış temsilcilerini almak için OR işlevinin nasıl kullanılacağını
göstermektedir. Circle of Excellence, 2007 yılında bir milyon dolardan fazla Gezi Bisikleti satışı veya iki buçuk
milyon dolardan fazla satış yapmış olan satış temsilcilerine verilen bir unvandır.
Şunu döndürür:
SA L ESP ERSO N
FLAG T RUE
SA L ESP ERSO N
FLAG T RUE
OR işlevi Sütun
Etiketleri
Abbas, Syed E
Alberts, Amy
E
Ansman-
Wolfe, Pamela
O
Campbell,
David R
Ito, Shu K
Jiang, Stephen
Y
Mensa-
Annan, Tete A
Reiter, Tsvi
Michael
Tsoflias, Lynn
N
Valdez, Rachel
B
Vargas,
Garrett R
SA L ESP ERSO N
FLAG T RUE
Varkey Circle of
Chudukatil, Excellence
Ranjit R
Ayrıca bkz.
Mantıksal işlevler (DAX)
SWITCH
8.05.2020 • 2 minutes to read
Bir ifadeyi bir değer listesine göre değerlendirir ve birden çok olası sonuç ifadesinden birini döndürür.
Söz dizimi
SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])
Parametreler
T ERIM TA N IM
Döndürülen değer
değer ile eşleşme olması durumunda sonuç ifadelerinden birinden veya değer ile eşleşme olmaması durumunda
diğer koşul ifadesinden gelen skaler değer.
Açıklamalar
Tüm result ifadeleri ve else ifadesi aynı veri türünde olmalıdır.
Örnek
Aşağıdaki örnek, ay adlarından bir hesaplanmış sütun oluşturur.
Söz dizimi
TRUE()
Döndürülen değer
Her zaman TRUE.
Açıklamalar
TRUE sözcüğü de TRUE mantıksal değeri olarak yorumlanır.
Örnek
Formül, 'InternetSales_USD'[SalesAmount_USD] sütunundaki değer 200000'den büyük olduğunda TRUE
mantıksal değerini döndürür.
SÜT UN
T RUE- FA L SE ET IK ET L ERI
Ayrıca bkz.
FALSE işlevi (DAX)
NOT işlevi (DAX)
IF işlevi (DAX)
DAX işlevi başvurusu
Matematik ve trigonometri işlevleri
8.05.2020 • 4 minutes to read
Veri Çözümleme İfadeleri (DAX) içindeki matematik işlevleri, Excel'deki matematik ve trigonometri işlevlerine
çok benzer. Bu bölümde DAX tarafından sunulan matematik işlevleri listelenmiştir.
Bu kategoride
İŞ L EV A Ç IK L A M A
FACT Sayının 1*2*3*...* serisine eşit olan ve verilen sayı ile biten
faktöriyelini döndürür.
Söz dizimi
ABS(<number>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
Bir sayının mutlak değeri, işaret içermeyen tam veya kesirli sayıdır. ABS işlevini, pozitif sayı gerektiren işlevlerin
içine yerleştirilmiş olan ifadelerde yalnızca negatif olmayan sayıların döndürülmesini sağlamak için
kullanabilirsiniz.
Örnek
Aşağıdaki örnek, liste fiyatı ve bayi fiyatı arasındaki farkın mutlak değerini döndürür. Bu değeri kullanarak
DealerMarkup adlı yeni bir hesaplanmış sütun oluşturabilirsiniz.
=ABS([DealerPrice]-[ListPrice])
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
SIGN işlevi (DAX)
ACOS
8.05.2020 • 2 minutes to read
Bir sayının ark kosinüsünü veya ters kosinüsünü döndürür. Ark kosinüs, kosinüsü sayı olan açıdır. Döndürülen açı, 0
(sıfır) ila pi aralığında radyan olarak verilir.
Sözdizimi
ACOS(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir sayının ark kosinüsünü veya ters kosinüsünü döndürür.
Açıklamalar
Sonucu radyan yerine derece olarak almak isterseniz 180/PI() ile çarpın veya DEGREES işlevini kullanın.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Bir sayının ters hiperbolik kosinüsünü döndürür. Sayı 1'e eşit veya daha büyük olmalıdır. Ters hiperbolik kosinüs,
hiperbolik kosinüsü sayı olan değerdir, yani ACOSH(COSH(number)) sayı ile eşittir.
Söz dizimi
ACOSH(number)
Parametreler
T ERIM TA N IM
sayı 1'e eşit veya 1'den büyük herhangi bir gerçek sayı.
Döndürülen değer
Bir sayının ters hiperbolik kosinüsünü döndürür.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Bir sayının ark kotanjant veya ters kotanjantının ana değerini döndürür.
Sözdizimi
ACOT(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Tek bir ondalık değer.
ACOT
9.05.2020 • 2 minutes to read
Söz dizimi
ACOTH(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Tek bir ondalık değer.
ASIN
8.05.2020 • 2 minutes to read
Bir sayının arksinüsünü veya ters sinüsünü döndürür. Arksinüs, sinüsü sayı olan açıdır. Döndürülen açı, -pi/2 ile pi/2
aralığında radyan cinsinden verilir.
Sözdizimi
ASIN(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir sayının arksinüsünü veya ters sinüsünü döndürür.
Açıklamalar
Arksinüsü derece cinsinden ifade etmek için, sonucu 180/PI () ile çarpın veya DEGREES işlevini kullanın.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Bir sayının ters hiperbolik sinüsünü döndürür. Ters hiperbolik sinüs, hiperbolik sinüsü sayı olan değerdir, yani
ASINH(SINH(number)) sayı ile eşittir.
Söz dizimi
ASINH(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir sayının ters hiperbolik sinüsünü döndürür.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Bir sayının arktanjantını veya ters tanjantını döndürür. Arktanjant, tanjantı sayı olan açıdır. Döndürülen açı, -pi/2 ile
pi/2 aralığında radyan cinsinden verilir.
Sözdizimi
ATAN(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir sayının ters hiperbolik tanjantını döndürür.
Açıklamalar
Arktanjantı derece cinsinden ifade etmek için, sonucu 180/PI () ile çarpın veya DEGREES işlevini kullanın.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Bir sayının ters hiperbolik tanjantını döndürür. -1 ile 1 arasında olması gerekir (-1 ve 1 hariç). Ters hiperbolik
tanjant, hiperbolik tanjantı sayı olan değerdir, yani ATANH(TANH(number)) sayı ile eşittir.
Sözdizimi
ATANH(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir sayının ters hiperbolik tanjantını döndürür.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
=ATANH(-0,1) -0,100335348
Ayrıca bkz.
ATAN işlevi (DAX)
CEILING
8.05.2020 • 2 minutes to read
Sayıyı yukarıya doğru en yakın tamsayıya veya en yakın anlamlı çarpıma yuvarlar.
Sözdizimi
CEILING(<number>, <significance>)
Parametreler
T ERIM TA N IM
number Yuvarlamak istediğiniz sayı veya sayı içeren bir sütuna başvuru.
Döndürülen değer
Belirtilen şekilde yuvarlanmış bir sayı.
Açıklamalar
DAX'ta iki CEILING işlevi vardır ve bu iki işlev arasındaki farklar şunlardır:
CEILING işlevi, Excel'deki CEILING işlevi gibi çalışır.
ISO.CEILING işlevi, tavan değerini belirlemek için ISO tanımlı davranışı uygular.
İki işlev de pozitif sayılar için aynı değeri döndürür ancak negatif sayılarda farklı sonuçlar elde eder. Önem için
pozitif çarpan kullanıldığında hem CEILING hem de ISO.CEILING işlevi negatif sayıları yukarı yuvarlar (pozitif
sonsuza doğru). Önem için negatif çarpan kullanıldığında CEILING işlevi sayıları aşağı (negatif sonsuza doğru)
yuvarlarken ISO.CEILING işlevi negatif sayıları yukarı (pozitif sonsuza doğru) yuvarlar.
Döndürülen tür genellikle önem bağımsız değişkeni ile aynı türde olur ancak aşağıdaki özel durumlar da
mevcuttur:
Sayı bağımsız değişkeninin para birimi olması durumunda döndürülen tür de para birimi olur.
Önem bağımsız değişkeninin Boole olması durumunda döndürülen tür tamsayı olur.
Önem bağımsız değişkeninin sayısal değer olmaması durumunda döndürülen tür gerçek olur.
Örnek
Aşağıdaki formül 4,45 değerini döndürür. Bu, fiyatlandırma için daha küçük birimler kullanmaktan kaçınmak
istediğinizde faydalı olabilir. Mevcut bir ürünün fiyatı 4,42 USD ise CEILING işlevini kullanarak fiyatları en yakın beş
sente yuvarlayabilirsiniz.
=CEILING(4.42,0.05)
Örnek
Aşağıdaki formül, önceki örnekle benzer sonuçlar döndürür ancak ProductPrice sütununda kayıtlı olan sayısal
değerleri kullanır.
=CEILING([ProductPrice],0.05)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
FLOOR işlevi (DAX)
ISO.CEILING işlevi (DAX)
ROUNDUP işlevi (DAX)
COMBIN
8.05.2020 • 2 minutes to read
Belirli bir öğe sayısı için kombinasyon sayısını döndürür. Belirli bir öğe sayısı için mümkün olan toplam grup
sayısını belirlemek üzere COMBIN öğesini kullanın.
Sözdizimi
COMBIN(number, number_chosen)
Parametreler
T ERIM TA N IM
Döndürülen değer
Belirli bir öğe sayısı için kombinasyon sayısını döndürür.
Açıklamalar
Bağımsız değişkenler tamsayı haline getirilir.
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse COMBIN, #VALUE! hata değerini döndürür.
Sayı < 0, number_chosen < 0 veya sayı < number_chosen ise COMBIN, #NUM! hata değerini döndürür.
Kombinasyon, iç sıralama fark etmeksizin öğe kümesini veya alt kümesini kapsar. Kombinasyonlar, dahili
sıralamanın önemli olduğu permütasyonlardan farklıdır.
Kombinasyon sayısı aşağıdaki gibidir ve burada sayı = n ve number_chosen = k olur:
Burada:
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Sözdizimi
COMBINA(number, number_chosen)
Parametreler
T ERIM TA N IM
Döndürülen değer
Belirli bir öğe sayısı için kombinasyon (tekrarlarla) sayısını döndürür.
Açıklamalar
Bağımsız değişkenlerden birinin değeri kısıtlamaların dışındaysa COMBINA, #NUM! hata değerini döndürür.
Bağımsız değişkenlerden biri sayısal olmayan bir değer ise COMBINA, #VALUE! hata değerini döndürür.
Aşağıdaki denklemde N, Sayı, M ise Number_chosen değeridir:
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Sözdizimi
COS(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Verilen açının kosinüsünü döndürür.
Açıklamalar
Açı derece cinsinden belirtilmişse radyana dönüştürmek için PI()/180 ile çarpın veya RADIANS işlevini kullanın.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Söz dizimi
COSH(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir sayının hiperbolik kosinüsü.
Açıklamalar
Hiperbolik kosinüs için formül:
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Bağımsız değişkeni değerlendirir ve sonucu para birimi veri türü olarak döndürür.
Sözdizimi
CURRENCY(<value>)
Parametreler
T ERIM TA N IM
değer İfadenin diğer tüm işlemlerden önce tam olarak bir kez
değerlendirileceği tek bir skaler değer döndüren DAX ifadesi.
Döndürülen değer
Değerlendirilen ve bir para birimi türü değeri olarak döndürülen ifadenin değeri.
Açıklamalar
CURRENCY işlevi, 4 ondalık basamak döndürmek için, 5. önemli ondalık sayıyı yuvarlar. 5. önemli ondalık
basamağın 5 veya üzeri olması durumunda yukarı yuvarlama yapılır. Örneğin değer 3,6666666666666 ise
para birimine dönüştürüldüğünde $3,6667 olur ancak 3,0123456789 değeri, $3,0123 olarak dönüştürülür.
İfadenin veri türü TrueFalse ise CURRENCY(<TrueFalse>) formülü True değerler için $1,0000, False değerler
için ise $0,0000 döndürür.
İfadenin veri türü Metin ise CURRENCY(<Text>) formülü metni sayıya dönüştürmeye çalışır. Dönüştürmenin
başarılı olması durumunda sayı para birimine dönüştürülür, aksi takdirde bir hata döndürülür.
İfadenin veri türünün Tarih Saat olması durumunda CURRENCY(<DateTime>) formülü tarih saat değerini
bir sayıya, bu sayıyı da para birimine dönüştürür. Tarih Saat değerleri, verilen tarih ile 1900-03-01 arasındaki
gün sayısını temsil eden bir tamsayı bölümüne ve günün bölümünü temsil eden (12 saat veya öğlen 0,5
kabul edilir) ondalık bölüme sahiptir. İfade değerinin uygun bir Tarih Saat değeri olmaması halinde bir hata
döndürülür.
Örnek
1234,56 sayısını para birimi veri türüne dönüştürün.
=CURRENCY(1234.56)
Söz dizimi
DEGREES(angle)
Parametreler
T ERIM TA N IM
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Bölme işlemi gerçekleştirir ve 0 ile bölme durumunda alternatif sonuç veya BLANK() döndürür.
Sözdizimi
DIVIDE(<numerator>, <denominator> [,<alternateresult>])
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
0'a bölme durumunda sağlanan alternatif değer sabit olmalıdır.
Örnek
Aşağıdaki örnek 2,5 sayısını döndürür.
=DIVIDE(5,2)
Örnek
Aşağıdaki örnek BLANK döndürür.
=DIVIDE(5,0)
Örnek
Aşağıdaki örnek 1 sayısını döndürür.
=DIVIDE(5,0,1)
Ayrıca bkz.
QUOTIENT işlevi (DAX)
Matematik ve Trigonometri işlevleri (DAX)
EVEN
8.05.2020 • 2 minutes to read
En yakın çift tam sayıya yuvarlanan sayıyı döndürür. İkili olarak gelen öğeleri işlemek için bu işlevi kullanabilirsiniz.
Örneğin bir kasa bir veya iki öğe sırasını kabul eder. Öğe sayısı, en yakın ikiye yuvarlandığında kasanın
kapasitesiyle eşleştiğinde kasa doludur.
Sözdizimi
EVEN(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
En yakın çift tam sayıya yuvarlanan sayıyı döndürür.
Açıklamalar
Sayı, sayısal olmayan bir değerse EVEN, #VALUE! hata değerini döndürür.
Sayının işaretinden bağımsız olarak, sıfırdan uzağa ayarlandığında bir değer yukarı yuvarlanır. Sayı çift bir tamsayı
olduğunda yuvarlama gerçekleşmez.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Verilen bir sayının üssünün e sayısının üssü olarak kullanmasıyla elde edilen sonucu döndürür. Sabit e
2,71828182845904'e eşittir ve doğal logaritmanın tabanıdır.
Söz dizimi
EXP(<number>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Özel Durumlar
Açıklamalar
EXP, verilen sayının doğal logaritması olan LN işlevinin tersidir.
e dışındaki tabanların üslerini hesaplamak için üs işleci (^) kullanın. Daha fazla bilgi için bkz. DAX İşleç Başvurusu.
Örnek
Aşağıdaki formül, e değerinin [Power] sütununda belirtilen kuvvetini hesaplar.
=EXP([Power])
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
LN işlevi (DAX)
EXP işlevi (DAX)
LOG işlevi (DAX)
LOG işlevi (DAX)
FACT
8.05.2020 • 2 minutes to read
Sayının 1*2*3*...* serisine eşit olan ve verilen sayı ile biten faktöriyelini döndürür.
Sözdizimi
FACT(<number>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
Sayı bir tamsayı değilse, kesilir ve bir hata döndürülür. Sonuç çok büyükse bir hata döndürülür.
Örnek
Aşağıdaki formül, [Values] sütunundaki tamsayı dizisinin faktöriyelini döndürür.
=FACT([Values])
DE ĞERL ER SO N UÇ L A R
0 1
1 1
2 2
3 6
4 24
5 120
170 7,257415615308E+306
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
TRUNC işlevi (DAX)
FLOOR
8.05.2020 • 2 minutes to read
Söz dizimi
FLOOR(<number>, <significance>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse FLOOR, #VALUE! hata iletisini döndürür.
Sayı ve önem farklı işaretlere sahipse FLOOR, #NUM döndürür! hata değerini döndürür.
Sayının işaretinden bağımsız olarak, sıfırdan uzağa ayarlandığında bir değer aşağı yuvarlanır. Sayı, önemin tam katı
ise yuvarlama gerçekleşmez.
Örnek
Aşağıdaki formül InternetSales tablosunun [Total Product Cost] sütunundaki değerleri alır ve 1'in en yakın
çarpanına yuvarlar.
DE ĞERL ER B EK L EN EN SO N UÇ
10,8423 10,8
8,0373 8
2,9733 2.9
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
GCD
8.05.2020 • 2 minutes to read
İki veya daha fazla tamsayının en büyük ortak bölenini döndürür. En büyük ortak bölen, sayı1 ve sayı2 değerlerini
kalan olmadan bölen en büyük tamsayıdır.
Sözdizimi
GCD(number1, [number2], ...)
Parametreler
T ERIM TA N IM
sayı1, sayı2,... Sayı1 gereklidir, sonraki sayılar isteğe bağlıdır. 1 ile 255
arasında değer. Değerler tamsayı değilse kesilir.
Döndürülen değer
İki veya daha fazla tamsayının en büyük ortak böleni.
Açıklamalar
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse GCD, #VALUE! hata değerini döndürür.
Bağımsız değişkenlerden biri sıfırdan küçükse GCD, #NUM! hata değerini döndürür.
Bir tüm değerleri eşit şekilde böler.
Asal sayı yalnızca bire ve kendisine bölünür.
GCD parametrelerinden biri >=2^53 ise GCD, #NUM! hata değerini döndürür.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Sözdizimi
INT(<number>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
TRUNC ve INT tamsayı döndürür. TRUNC sayının ondalık kısmını kaldırır. INT sayıyı, sayının ondalık kısmının
değerine göre en yakın tamsayıya yuvarlar. INT ve TRUNC yalnızca negatif sayılar kullanıldığında farklıdır:
TRUNC(-4.3) , -4 değerini döndürür ancak -5 daha düşük bir sayı olduğundan INT(-4.3) , -5 değerini döndürür.
Örnek
Aşağıdaki ifade değeri 1'e yuvarlar. ROUND işlevini kullanırsanız, sonuç 2 olur.
=INT(1.5)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
ROUND işlevi (DAX)
ROUNDUP işlevi (DAX)
ROUNDDOWN işlevi (DAX)
MROUND işlevi (DAX)
ISO.CEILING
8.05.2020 • 3 minutes to read
Sayıyı yukarıya doğru en yakın tamsayıya veya en yakın anlamlı çarpıma yuvarlar.
Sözdizimi
ISO.CEILING(<number>[, <significance>])
Parametreler
T ERIM TA N IM
Döndürülen değer
sayı bağımsız değişkeni ile aynı türde olan ve belirtilen şekilde yuvarlanan bir sayı.
Açıklamalar
DAX'ta iki CEILING işlevi vardır ve bu iki işlev arasındaki farklar şunlardır:
CEILING işlevi, Excel'deki CEILING işlevi gibi çalışır.
ISO.CEILING işlevi, tavan değerini belirlemek için ISO tanımlı davranışı uygular.
İki işlev de pozitif sayılar için aynı değeri döndürür ancak negatif sayılarda farklı sonuçlar elde eder. Önem için
pozitif çarpan kullanıldığında hem CEILING hem de ISO.CEILING işlevi negatif sayıları yukarı yuvarlar (pozitif
sonsuza doğru). Önem için negatif çarpan kullanıldığında CEILING işlevi sayıları aşağı (negatif sonsuza doğru)
yuvarlarken ISO.CEILING işlevi negatif sayıları yukarı (pozitif sonsuza doğru) yuvarlar.
Sonuçta elde edilen tür genellikle bağımsız değişken olarak kullanılan önem ile aynı türde olur ancak aşağıdaki
özel durumlar da mevcuttur:
İlk bağımsız değişken para birimi türünde ise sonuç da para birimi türü olur.
İsteğe bağlı bağımsız değişken dahil edilmediğinde sonuç tamsayı türünde olur.
=ISO.CEILING(4.42,0.05)
=ISO.CEILING(-4.42,0.05)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
FLOOR işlevi (DAX)
CEILING işlevi (DAX)
ROUNDUP işlevi (DAX)
LCM
8.05.2020 • 2 minutes to read
Tamsayıların en küçük ortak çarpanını döndürür. En küçük ortak çarpan; sayı1, sayı2 gibi tüm tamsayı bağımsız
değişkenlerinin çarpanı olan pozitif tamsayıdır. LCM ile farklı paydalara sahip kesirler ekleyebilirsiniz.
Söz dizimi
LCM(number1, [number2], ...)
Parametreler
T ERIM TA N IM
sayı1, sayı2,... Sayı1 gereklidir, sonraki sayılar isteğe bağlıdır. En küçük ortak
çarpanı bulmak istediğiniz 1 ile 255 arasında değer. Değerler
tamsayı değilse kesilir.
Döndürülen değer
Tamsayıların en küçük ortak çarpanını döndürür.
Açıklamalar
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse LCM, #VALUE! hata değerini döndürür.
Bağımsız değişkenlerden biri sıfırdan küçükse LCM, #NUM! hata değerini döndürür.
LCM(a,b) >=2^53 ise LCM, #NUM! hata değerini döndürür.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Sayının doğal logaritmasını döndürür. Doğal logaritmalar e (2,71828182845904) sabitini temel alır.
Söz dizimi
LN(<number>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
LN işlevi, EXP işlevinin tersidir.
Örnek
Aşağıdaki örnek, [Values] sütunundaki sayının doğal logaritmasını döndürür.
=LN([Values])
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
EXP işlevi (DAX)
LOG
9.05.2020 • 2 minutes to read
Sözdizimi
LOG(<number>,<base>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
Değer görüntülenemeyecek kadar büyükse bir hata alabilirsiniz.
LOG10 işlevi ile benzerdir ancak o işlev her zaman genel logaritmayı, yani 10 tabanı logaritmasını döndürür.
Örnek
Aşağıdaki formüllerin hepsi 2 sonucunu döndürür.
=LOG(100,10)
=LOG(100)
=LOG10(100)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
EXP işlevi (DAX)
LOG işlevi (DAX)
LOG işlevi (DAX)
LOG10
8.05.2020 • 2 minutes to read
Sözdizimi
LOG10(<number>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
LOG işlevi, logaritma tabanını değiştirerek 10 tabanı yerine farklı bir taban kullanmanızı sağlar.
Örnek
Aşağıdaki formüllerin hepsi 2 sonucunu döndürür:
=LOG(100,10)
=LOG(100)
=LOG10(100)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
EXP işlevi (DAX)
LOG işlevi (DAX)
LOG işlevi (DAX)
MOD
8.05.2020 • 2 minutes to read
Sayı bölen tarafından bölündükten sonra kalanı döndürür. Sonuç her zaman bölenle aynı işarete sahiptir.
Sözdizimi
MOD(<number>, <divisor>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
Bölen 0 (sıfır) ise MOD bir hata döndürür. 0'a bölme işlemi yapamazsınız.
MOD işlevi, INT işlevi ile ifade edilebilir: MOD(n, d) = n - d*INT(n/d)
Örnek
Aşağıdaki formül, 3'ün 2'ye bölümünden kalan 1 değerini döndürür.
=MOD(3,2)
Örnek
Aşağıdaki formül, 3'ün 2'ye bölümünden kalan -1 değerini döndürür. İşaretin her zaman bölen işaretiyle aynı
olduğunu unutmayın.
=MOD(-3,-2)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
ROUND işlevi (DAX)
ROUNDUP işlevi (DAX)
ROUNDDOWN işlevi (DAX)
MROUND işlevi (DAX)
INT işlevi (DAX)
MROUND
12.05.2020 • 2 minutes to read
Söz dizimi
MROUND(<number>, <multiple>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
Sayı belirtilen çarpana bölündüğünde kalan değer çarpanın yarısından büyük veya yarısına eşitse, MROUND
sıfırdan uzağa doğru yuvarlar.
=MROUND(1.3,0.2)
=MROUND(-10,-3)
Örnek: Hata
Açıklama
Aşağıdaki ifade hata döndürür çünkü sayıların işaretleri farklıdır.
Kod
=MROUND(5,-2)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
ROUND işlevi (DAX)
ROUNDUP işlevi (DAX)
ROUNDDOWN işlevi (DAX)
MROUND işlevi (DAX)
INT işlevi (DAX)
ODD
9.05.2020 • 2 minutes to read
Söz dizimi
ODD(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
En yakın tek tam sayıya yuvarlanan sayıyı döndürür.
Açıklamalar
Sayı, sayısal olmayan bir değerse ODD, #VALUE! hata değerini döndürür.
Sayının işaretinden bağımsız olarak, sıfırdan uzağa ayarlandığında bir değer yukarı yuvarlanır. Sayı tek bir tamsayı
olduğunda yuvarlama gerçekleşmez.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Sözdizimi
PI()
Döndürülen değer
Pi sayısının 15 basamağa kadar olan değerini gösteren ondalık sayı (3,14159265358979).
Açıklamalar
Pi, matematiksel bir sabittir. DAX'ta Pi, Excel'de olduğu gibi 15 basamağa kadar kesin bir gerçek sayı olarak temsil
edilir.
Örnek
Aşağıdaki formül, [Radius] sütununda yarıçapı verilen dairenin alanını hesaplar.
=PI()*([Radius]*2)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
POWER
9.05.2020 • 2 minutes to read
Sözdizimi
POWER(<number>, <power>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Örnek
Aşağıdaki örnek 25 sayısını döndürür.
=POWER(5,2)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
PRODUCT
8.05.2020 • 2 minutes to read
Sözdizimi
PRODUCT(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
Yalnızca sütundaki sayılar sayılır. Boşluklar, mantıksal değerler ve metin yok sayılır.
PRODUCT( Tablo[Sütun] ) formülü PRODUCTX( Tablo, Tablo[Sütun] ) formülü ile eşdeğerdir.
Örnek
Aşağıdaki formül, Annuity tablosundaki AdjustedRates sütununun çarpımını hesaplar:
=PRODUCT( Annuity[AdjustedRates] )
Ayrıca bkz.
PRODUCTX işlevi (DAX)
PRODUCTX
8.05.2020 • 2 minutes to read
Söz dizimi
PRODUCTX(<table>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
PRODUCTX işlevi ilk bağımsız değişken olarak bir tablo veya tablo dönüştüren bir ifade alır. İkinci bağımsız
değişken, çarpımını hesaplamak istediğiniz sayıları içeren bir sütun veya sütun sonucu veren bir ifadedir.
Yalnızca sütundaki sayılar sayılır. Boşluklar, mantıksal değerler ve metin yok sayılır.
Örnek
Aşağıdaki formül, bir yatırımın gelecekteki değerini hesaplar:
Ayrıca bkz.
PRODUCT işlevi (DAX)
QUOTIENT
8.05.2020 • 2 minutes to read
Bölme işlemi gerçekleştirir ve bölme sonucunun yalnızca tamsayı bölümünü döndürür. Bölme işlemindeki kalanı
yoksaymak için bu işlevi kullanabilirsiniz.
Sözdizimi
QUOTIENT(<numerator>, <denominator>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse QUOTIENT, #VALUE! hata değerini döndürür.
Bağımsız değişkenler için değişmez değer yerine sütun başvurusu kullanabilirsiniz. Ancak başvurduğunuz sütunda
0 (sıfır) varsa değer sütununun tamamı için hata döndürülür.
Örnek
Aşağıdaki formüllerin hepsi 2 sonucunu döndürür.
=QUOTIENT(5,2)
=QUOTIENT(10/2,2)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
RADIANS
8.05.2020 • 2 minutes to read
Söz dizimi
RADIANS(angle)
Parametreler
T ERIM TA N IM
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
0 ya da 0'dan büyük ve 1'den küçük rastgele bir sayıyı eşit dağıtılmış olarak döndürür. Bu işlevi içeren hücre
yeniden hesaplandığında döndürülen sayı da değişir.
Sözdizimi
RAND()
Döndürülen değer
Ondalık sayı.
Açıklamalar
Yeniden hesaplama, çalışma kitabının El ile veya Otomatik yeniden hesaplama moduna ayarlanmış olması ve
verilerin yenilenme durumu gibi birçok faktöre bağlıdır. Bu durum, yeniden hesaplamayı kapatarak RAND işlevinin
yeni bir rastgele oluşturabileceği zamanın denetlenebildiği Microsoft Excel'den farklıdır.
RAND ve sabit değeri olmayan diğer geçici işlevler her zaman yeniden hesaplanmaz. Örneğin bir sorgunun veya
filtrenin yürütülmesi, bu tür işlevlerin her zaman yeniden değerlendirilmesine neden olmaz. Ancak bu işlevlerin
sonuçları, sütun yeniden hesaplandığında yeniden hesaplanır. Bu durumlar, dış veri kaynağından veri yenileme veya
bu işlevleri içeren formüllerin yeniden değerlendirilmesine neden olan verilerin el ile düzenlenmesini içerir.
Ayrıca RAND bir ölçünün tanımında kullanıldığında her zaman yeniden hesaplanır.
Ayrıca bu tür bağlamlarda RAND işlevi sıfıra bölme hatalarını önlemek için sıfır sonucunu döndüremez.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
İki diğer sayı arasında rastgele bir gerçek sayı üretmek için aşağıdaki gibi bir formül kullanabilirsiniz:
= RAND()*(int1-int2)+int1
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
İstatistiksel işlevler (DAX)
RANDBETWEEN
9.05.2020 • 2 minutes to read
Sözdizimi
RANDBETWEEN(<bottom>,<top>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki formül 1 ile 10 arasında rastgele bir sayı döndürür.
=RANDBETWEEN(1,10)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
İstatistiksel işlevler (DAX)
ROUND
8.05.2020 • 2 minutes to read
Söz dizimi
ROUND(<number>, <num_digits>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
sayı_rakamlar değeri 0 (sıfır) değerinden büyükse, sayı belirtilen ondalık basamak sayısına yuvarlanır.
sayı_rakamlar değeri 0 ise, sayı en yakın tamsayıya yuvarlanır.
sayı_rakamlar değeri 0'dan küçükse sayı ondalık ayırıcının soluna yuvarlanır.
İlgili işlevler
Her zaman yukarı (sıfırdan uzağa) yuvarlamak için ROUNDUP işlevini kullanın.
Her zaman aşağı (sıfıra doğru) yuvarlamak için ROUNDDOWN işlevini kullanın.
Bir sayıyı belirli bir çarpana (örneğin, en yakın 0,5 çarpanına) yuvarlamak için MROUND işlevini kullanın.
Sayının tamsayı kısmını elde etmek için TRUNC ve INT işlevlerini kullanabilirsiniz.
Örnek
Aşağıdaki formül 2,15 sayısını yukarı, bir ondalık basamağa yuvarlar. Beklenen sonuç 2,2 değeridir.
=ROUND(2.15,1)
Örnek
Aşağıdaki formül 21,5 sayısını ondalık ayırıcının solunda bir ondalık basamağa yuvarlar. Beklenen sonuç 20
değeridir.
=ROUND(21.5,-1)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
ROUND işlevi (DAX)
ROUNDDOWN işlevi (DAX)
MROUND işlevi (DAX)
INT işlevi (DAX)
TRUNC işlevi (DAX)
ROUNDDOWN
8.05.2020 • 2 minutes to read
Sözdizimi
ROUNDDOWN(<number>, <num_digits>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
sayı_rakamlar 0 (sıfır) değerinden büyükse, sayı değeri belirtilen ondalık basamak sayısına yuvarlanır.
sayı_rakamlar 0 ise, sayı değeri en yakın tamsayıya yuvarlanır.
sayı_rakamlar 0'dan küçükse, sayı değeri ondalık noktanın soluna yuvarlanır.
İlgili işlevler
ROUNDDOWN, ROUND gibi çalışır ancak sayıları her zaman aşağı yuvarlar. INT işlevi de aşağı yuvarlar ancak INT
ile sonuç her zaman bir tamsayıdır. Ancak ROUNDDOWN ile sonucun kesinliğini kontrol edebilirsiniz.
Örnek
Aşağıdaki örnek 3,14159 sayısını üç ondalık basamağa yuvarlar. Beklenen sonuç 3,141 sayısıdır.
=ROUNDDOWN(3.14159,3)
Örnek
Aşağıdaki örnek, 31415,92654 değerini ondalık bölümün sol tarafındaki 2 ondalık basamağa yuvarlar. Beklenen
sonuç 31400 sayısıdır.
=ROUNDDOWN(31415.92654, -2)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
ROUND işlevi (DAX)
ROUNDUP işlevi (DAX)
ROUNDDOWN işlevi (DAX)
MROUND işlevi (DAX)
INT işlevi (DAX)
ROUNDUP
8.05.2020 • 2 minutes to read
Sözdizimi
ROUNDUP(<number>, <num_digits>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
ROUNDUP, ROUND gibi çalışır ancak sayıları her zaman yukarı yuvarlar.
sayı_rakamlar değeri 0 (sıfır) değerinden büyükse, sayı belirtilen ondalık basamak sayısına yukarı
yuvarlanır.
sayı_rakamlar 0 ise, sayı değeri en yakın tamsayıya yukarı yuvarlanır.
sayı_rakamlar değeri 0'dan küçükse sayı ondalık ayırıcının soluna yukarı yuvarlanır.
İlgili işlevler
ROUNDUP, ROUND gibi çalışır ancak sayıları her zaman yukarı yuvarlar.
Örnek
Aşağıdaki formül, Pi sayısını dört ondalık basamağa yuvarlar. Beklenen sonuç 3,1416 değeridir.
=ROUNDUP(PI(),4)
=ROUNDUP(1.3,0.2)
=ROUNDUP([Values],-1)
Yorumlar
sayı_rakamlar değeri sıfırdan küçükse ondalık ayırıcının solundaki basamaklar belirttiğiniz değere göre artırılır.
F REIGH TC O ST B EK L EN EN SO N UÇ
13,25 20
2.45 10
25,56 30
1,34 10
345,01 350
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
ROUND işlevi (DAX)
ROUNDDOWN işlevi (DAX)
MROUND işlevi (DAX)
INT işlevi (DAX)
SIGN
9.05.2020 • 2 minutes to read
Bir sayının, hesaplama sonucunun veya sütun değerinin işaretini belirler. İşlev; sayı pozitifse 1, sayı sıfırsa 0 (sıfır),
sayı negatifse -1 döndürür.
Sözdizimi
SIGN(<number>)
Parametreler
T ERIM TA N IM
number Gerçek sayı, sayı içeren bir sütun veya sayı olarak
değerlendirilen bir ifade.
Döndürülen değer
Bir tamsayı. Döndürülen olası değerler 1, 0 ve -1'dir.
DÖ N DÜRÜL EN DE ĞER A Ç IK L A M A
1 Sayı pozitif
0 Sayı sıfır
-1 Sayı negatif
Örnek
Aşağıdaki formül, satış fiyatından maliyeti düşen ifadenin sonucunun işaretini döndürür.
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
SQRT
8.05.2020 • 2 minutes to read
Söz dizimi
SQRT(<number>)
Parametreler
T ERIM TA N IM
sayı Karekökünü istediğiniz sayı, sayı içeren bir sütun veya sayı
olarak değerlendirilen bir ifade.
Döndürülen değer
Ondalık sayı.
Açıklamalar
Sayı negatifse SQRT işlevi hata döndürür.
Örnek
Aşağıdaki formül 5 değerini döndürür.
=SQRT(25)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
SUM
8.05.2020 • 2 minutes to read
Söz dizimi
SUM(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
Toplanan değerleri filtrelemek isterseniz SUMX işlevini kullanarak toplama işlemi için bir ifade belirtebilirsiniz.
Örnek
Aşağıdaki örnek Sales tablosunun Amt sütununda yer alan tüm sayıları toplar.
=SUM(Sales[Amt])
Ayrıca bkz.
SUMX işlevi (DAX)
İstatistiksel işlevler (DAX)
SUMX
8.05.2020 • 2 minutes to read
Sözdizimi
SUMX(<table>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
SUMX işlevi ilk bağımsız değişken olarak bir tablo veya tablo dönüştüren bir ifade alır. İkinci bağımsız değişken,
toplamı hesaplamak istediğiniz sayıları içeren bir sütun veya sütun sonucu veren bir ifadedir.
Yalnızca sütundaki sayılar sayılır. Boşluklar, mantıksal değerler ve metin yok sayılır.
SUMX işlevinin kullanıldığı daha karmaşık formüller için bkz. ALL işlevi (DAX) ve CALCULATETABLE işlevi (DAX).
Örnek
Aşağıdaki örnek önce ShippingTerritoryID = 5 ifadesiyle InternetSales tablosunu filtrelemekte ve ardından Freight
sütunundaki tüm değerlerin toplamını döndürmektedir. Başka bir deyişle bu ifade yalnızca belirli bir satış
alanındaki navlun ücretlerinin toplamını döndürür.
=SUMX(FILTER(InternetSales, InternetSales[SalesTerritoryID]=5),[Freight])
Sütunu filtrelemeniz gerekmiyorsa SUM işlevini kullanın. SUM işlevi, aynı ada sahip olan Excel işlevine benzer
ancak başvuru olarak bir sütun alır.
Ayrıca bkz.
SUM işlevi (DAX)
İstatistiksel işlevler (DAX)
TRUNC
8.05.2020 • 2 minutes to read
Sayının ondalık veya kesir bölümünü kaldırarak sayıyı kesip tamsayıya dönüştürür.
Sözdizimi
TRUNC(<number>,<num_digits>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
TRUNC ve INT tamsayı döndürür. TRUNC sayının ondalık kısmını kaldırır. INT sayıyı, sayının ondalık kısmının
değerine göre en yakın tamsayıya yuvarlar. INT ve TRUNC yalnızca negatif sayılar kullanıldığında farklıdır:
TRUNC(-4.3) , -4 değerini döndürür ancak -5 daha küçük bir sayı olduğundan INT(-4.3) , -5 değerini döndürür.
Örnek
Aşağıdaki formül, pi sayısının tamsayı bölümü olan 3 sayısını döndürür.
=TRUNC(PI())
Örnek
Aşağıdaki formül, -8,9 sayısının tamsayı bölümü olan -8 sayısını döndürür.
=TRUNC(-8.9)
Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
ROUND işlevi (DAX)
ROUNDUP işlevi (DAX)
ROUNDDOWN işlevi (DAX)
MROUND işlevi (DAX)
INT işlevi (DAX)
Diğer işlevler
9.05.2020 • 2 minutes to read
Bu kategoride
İŞ L EV A Ç IK L A M A
DATATABLE Satır içi veri değerleri kümesi bildirmek için bir mekanizma
sağlar.
NATURALINNERJOIN Bir tablo ile başka bir tablo arasında iç birleşim gerçekleştirir.
NATURALLEFTOUTERJOIN Bir tablo ile başka bir tablo arasında iç birleşim gerçekleştirir.
Tablo Oluşturucu (DAX) Bir veya daha fazla sütuna sahip olan bir tablo döndürür.
İŞ L EV A Ç IK L A M A
Sözdizimi
CONVERT(<Expression>, <Datatype>)
Parametreler
T ERIM TA N IM
Döndürülen değer
olarak dönüştürülmüş değerini döndürür.
Açıklamalar
Değerin belirtilen veri türüne dönüştürülemediği durumlarda işlev bir hata döndürür.
DAX hesaplanmış sütunları tek bir veri türüne ait olmalıdır. Tamsayı sütununa uygulanan MEDIAN ve MEDIANX
işlevleri tamsayı veya çift gibi karışık veri türleri döndürdüğünden şu hesaplanmış sütun ifadesi bir hata
döndürecektir: MedianNumberCarsOwned = MEDIAN(DimCustomer[NumberCarsOwned])
Karışık veri türlerini önlemek için ifadeyi her zaman çift veri türü döndürecek şekilde değiştirin, örneğin:
MedianNumberCarsOwned = MEDIANX(DimCustomer, CONVERT([NumberCarsOwned], DOUBLE))
Örnek
DAX sorgusu
Şunu döndürür:
[ DE ĞER]
2
DATATABLE
8.05.2020 • 2 minutes to read
Satır içi veri değerleri kümesi bildirmek için bir mekanizma sağlar.
Sözdizimi
DATATABLE (ColumnName1, DataType1, ColumnName2, DataType2..., {{Value1, Value2...}, {ValueN, ValueN+1...}...})
Parametreler
T ERIM TA N IM
Değer Tek boyutlu dizi sabiti için Excel söz dizimini kullanan tek bir
bağımsız değişken; dizi dizisi sağlamak için iç içe yerleştirilmiştir.
Bu bağımsız değişken, tabloda olacak veri değerleri kümesini
temsil eder.
Örneğin,
{ {satır1 içindeki değerler}, {satır2 içindeki değerler}, {satır3
içindeki değerler} vb. }
Burada {satır1 içindeki değerler}, sabit ifadelerin virgülle
ayrılmış kümesidir (sabit ifadelerin birleşimidir) ve DATE, TIME
ve BLANK gibi temel işlevlerin yanı sıra DATE ile TIME arasında
bir artı işleci ve negatif değerlerin ifade edilmesini sağlayan birli
eksi işlecine sahiptir.
Döndürülen değer
Satır içi değer kümesini bildiren tablo.
Açıklamalar
Tablo Oluşturucu, DATATABLE işlevinden farklı olarak giriş değeri olarak skaler ifade kullanılmasına izin verir.
Örnek
=DataTable("Name", STRING,
"Region", STRING
,{
{" User1","East"},
{" User2","East"},
{" User3","West"},
{" User4","West"},
{" User4","East"}
}
)
HATA
8.05.2020 • 2 minutes to read
Söz dizimi
ERROR(<text>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Yok
Açıklamalar
ERROR işlevi, skaler değerin beklendiği tüm DAX ifadelerine yerleştirilebilir.
Örnekler
Örnek 1
Aşağıdaki DAX işlevi:
DEFINE
MEASURE DimProduct[Measure] =
IF(
SELECTEDVALUE(DimProduct[Color]) = "Red",
ERROR("red color encountered"),
SELECTEDVALUE(DimProduct[Color])
)
EVALUATE SUMMARIZECOLUMNS(DimProduct[Color], "Measure", [Measure])
ORDER BY [Color]
Başarısız olur ve “red color encountered” (kırmızı renk tespit edildi) hata iletisini döndürür.
Örnek 2
Aşağıdaki DAX işlevi:
DEFINE
MEASURE DimProduct[Measure] =
IF(
SELECTEDVALUE(DimProduct[Color]) = "Magenta",
ERROR("magenta color encountered"),
SELECTEDVALUE(DimProduct[Color])
)
EVALUATE SUMMARIZECOLUMNS(DimProduct[Color], "Measure", [Measure])
ORDER BY [Color]
Şu tabloyu döndürür:
DIM P RO DUC T [ C O LO R] [ Ö L Ç Ü]
Siyah Siyah
Mavi Mavi
Gri Gri
Çoklu Çoklu
NA NA
Red Red
Gümüş Gümüş
Gümüş\Siyah Gümüş\Siyah
Beyaz Beyaz
Yellow Yellow
Söz dizimi
EXCEPT(<table_expression1>, <table_expression2>
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tablonun, diğer tabloda bulunmayan satırlarını içeren bir tablo.
Açıklamalar
Satır iki tabloda da görünüyorsa kendisi ve yinelenen örnekleri sonuç kümesine dahil edilmez. Satır yalnızca
tablo_ifadesi1 içinde görünüyorsa kendisi ve yinelenen örnekleri sonuç kümesine dahil edilir.
Sütun adları, tablo_ifadesi1 içindeki sütun adlarıyla eşleşir.
Döndürülen tablodaki sütunlar, ikinci tablodaki sütunların kökenine bakılmaksızın tablo_ifadesi1 kökenini temel alır.
Örneğin ilk tablo_ifadesi değerinin ilk sütunu, modeldeki C1 sütununu köken olarak alıyorsa EXCEPT işlevi satırları
ikinci tablo_ifadesi değerinin ilk sütunundaki değerlerin kullanılabilirlik durumuna göre azaltır ve C1 sütununu
temel alan kökeni değiştirmez.
İki tablodaki sütun sayısının aynı olması gerekir.
Sütunlar konumlandırmaya göre karşılaştırılır ve veri karşılaştırması yapılırken tür zorlaması yapılmaz.
Döndürülen satır kümesi, iki ifadenin sırasına göre değişir.
Döndürülen tablo, tablo_ifadesi1 ile ilişkili tablolardaki sütunları içermez.
Örnek
States1
EYA L ET
B
EYA L ET
States2
EYA L ET
Except(States1, States2)
EYA L ET
Except(States2, States1)
EYA L ET
E
GENERATESERIES
8.05.2020 • 2 minutes to read
Her birinin bir önceki ile arasında sabit bir değerin bulunduğu değerler dizisi olan aritmetik dizi değerlerini içeren
tek sütunlu bir tablo döndürür. Döndürülen sütunun adı Değer olur.
Sözdizimi
GENERATESERIES(<startValue>, <endValue>[, <incrementValue>])
Parametreler
T ERIM TA N IM
Döndürülen değer
Aritmetik serinin değerlerini içeren tek sütunlu tablo. Sütunun adı Değer olur.
Açıklamalar
startValue değeri endValue değerinden küçükse boş tablo döndürülür.
incrementValue pozitif tamsayı olmalıdır.
Sıra, endValue değerinden küçük veya ona eşit olan son değerde durur.
Örnekler
Örnek 1
Aşağıdaki DAX işlevi:
EVALUATE GENERATESERIES(1, 5)
[ DE ĞER]
2
[ DE ĞER]
Örnek 2
Aşağıdaki DAX işlevi:
[ DE ĞER]
1.2
1.6
2.4
Örnek 3
Aşağıdaki DAX işlevi:
[ DE ĞER]
10
10,5
11
11,5
12
GROUPBY
8.05.2020 • 6 minutes to read
GROUPBY işlevi, SUMMARIZE işleviyle benzerdir. Ancak GROUPBY işlevi, eklediği uzantı sütunları için örtük
CALCULATE işlemi gerçekleştirmez. GROUPBY, eklediği uzantı sütunlarındaki toplama işlevlerinde
CURRENTGROUP() adlı yeni bir işlevin kullanılmasını mümkün kılar. GROUPBY, gruplandırılmış verileri daha
performanslı hale getirerek yeniden kullanmaya çalışır.
Sözdizimi
GROUPBY (<table>, [<groupBy_columnName1>], [<name>, <expression>]… )
Parametreler
T ERIM TA N IM
Döndürülen değer
groupBy_columnName bağımsız değişkenleri için seçilen sütunlara ve ad bağımsız değişkenleri ile belirlenen
gruplanmış sütunlara sahip olan bir tablo.
Açıklamalar
GROUPBY işlevi şunları yapar:
1. Belirtilen tabloyla (ve "-bir" yönündeki tüm ilişkili tablolarla) çalışmaya başlar.
2. Tüm GroupBy sütunlarını kullanarak bir gruplandırma oluşturur (bunların 1. adımdaki tabloda mevcut
olması gerekir).
3. Her grup, sonuçta bir satır olarak gösterilir ancak özgün tablodaki bir satır kümesini temsil eder.
4. Her grup için eklenen uzantı sütunlarını değerlendirir. SUMMARIZE işlevinden farklı olarak örtülü
CALCULATE gerçekleştirmez ve grup, filtre bağlamına alınmaz.
Notlar:
Ad tanımladığınız her sütunda bir ifade olması gerekir, aksi takdirde bir hata döndürülür. İlk bağımsız
değişken olan ad, sonuçlardaki sütunun adını tanımlar. İkinci bağımsız değişken olan ifade, bu sütundaki her
bir satırın değerini almak için gerçekleştirilen hesaplamayı tanımlar.
groupBy_columnName tablo veya ilişkili bir tablo içinde olmalıdır.
Her ad çift tırnak içine alınmalıdır.
İşlev, seçilen satır kümesini bir veya daha fazla groupBy_columnName sütunu değerine göre özet satır
kümesine dönüştürür. Her grup için bir satır döndürülür.
Seçenekler
CURRENTGROUP()
CURRENTGROUP yalnızca GROUPBY işlevinin içinde sütun tanımlayan bir ifadede kullanılabilir. CURRENTGROUP
işlevi, GROUPBY işlevinin "tablo" bağımsız değişkeninden GROUPBY sonucunun geçerli satırına ait olan bir satır
kümesi döndürür. CURRENTGROUP işlevi bağımsız değişken almaz ve yalnızca şu toplama işlevlerinin birinci
bağımsız değişkeni olarak kullanılabilir: AverageX, CountAX, CountX, GeoMeanX, MaxX, MinX, ProductX, StDevX.S,
StDevX.P, SumX, VarX.S, VarX.P.
Örnek
Dört tabloya sahip olan bir veri modelini düşünelim: Satış, Müşteri, Ürün, Coğrafya. Burada Satış, diğer üç tabloyla
olan ilişkinin "çok" tarafındadır.
GROUPBY (
Sales,
Geography[Country],
Product[Category],
“Total Sales”, SUMX( CURRENTGROUP(), Sales[Price] * Sales[Qty])
)
Bu işlem Satış tablosuyla başlar ve ilgili tablolardaki tüm sütunlara uzanır. Ardından üç sütun içeren bir sonuç
oluşturur.
İlk sütunda satış yapılan ülkeler listelenir.
Üçüncü sütun, seçilen ülke ve ürün kategorisi için yapılan satışların toplam tutarıdır (fiyat*miktar ile
hesaplanır).
Önceki sonucu oluşturduğumuzu kabul edelim. Burada gösterildiği gibi GROUPBY işlevini yeniden kullanarak her
ülkede en fazla satış yapılan kategoriyi bulabilirsiniz.
DEFINE
VAR SalesByCountryAndCategory =
GROUPBY (
Sales,
Geography[Country],
Product[Category],
“Total Sales”, SUMX( CURRENTGROUP(), Sales[Price] * Sales[Qty])
)
Evaluate GROUPBY (
SalesByCountryAndCategory,
Geography[Country],
“Max Sales”, MAXX( CURRENTGROUP(), [Total Sales])
)
Ayrıca bkz.
SUMMARIZE işlevi (DAX)
SUMMARIZECOLUMNS işlevi (DAX)
INTERSECT
9.05.2020 • 2 minutes to read
Sözdizimi
INTERSECT(<table_expression1>, <table_expression2>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Hem tablo_ifadesi1 hem de tablo_ifadesi2 içinde bulunan tüm satırlara sahip olan bir tablo.
Özel durumlar
Açıklamalar
Kesişim, değişmeli değildir. Başka bir deyişle Intersect(T1, T2) ile Intersect(T2, T1) formüllerinin sonuç kümesi farklı
olacaktır.
Yinelenen satırlar korunur. Hem tablo_ifadesi1 hem de tablo_ifadesi2 içinde bulunan satır ve tablo_ifadesi1 içindeki
yinelemeleri sonuç kümesine dahil edilir.
Sütun adları, tablo_ifadesi1 içindeki sütun adlarıyla eşleşir.
Döndürülen tablodaki sütunlar, ikinci tablodaki sütunların kökenine bakılmaksızın tablo_ifadesi1 kökenini temel alır.
Örneğin ilk tablo_ifadesi değerinin ilk sütunu, modeldeki C1 sütununu köken olarak alıyorsa kesişim satırları ikinci
tablo_ifadesi değerinin ilk sütunundaki kesişimine göre azaltır ve C1 sütununu temel alan kökeni değiştirmez.
Sütunlar konumlandırmaya göre karşılaştırılır ve veri karşılaştırması yapılırken tür zorlaması yapılmaz.
Döndürülen tablo, tablo_ifadesi1 ile ilişkili tablolardaki sütunları içermez.
Örnek
States1
DURUM
B
DURUM
States2
DURUM
Intersect(States1, States2)
DURUM
Intersect(States2, States1)
DURUM
C
DURUM
D
ISEMPTY
8.05.2020 • 2 minutes to read
Sözdizimi
ISEMPTY(<table_expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Tablo boşsa (satır yoksa) true, değilse false olur.
Örnek
Aşağıdaki "Info" adlı tablo için:
ÜL K E DURUM İL Ç E TO P L A M
IND JK 20 800
IND MH 25 1000
IND WB 10 900
ABD CA 5 500
ABD WA 10 900
EVALUATE
ROW(“Any countries with count > 25?”, NOT(ISEMPTY(FILTER(Info, [Count]>25)))
İfadeler tarafından bağlam içindeki ölçünün ölçü listesinde belirtilenlerden biri olup olmadığını belirleme amacıyla
hesaplama öğelerinde kullanılır.
NOTE
Bu işlev şu anda yalnızca SQL Server 2019 Analysis Services CTP 2.3 ve üzeri için geçerlidir.
Söz dizimi
ISSELECTEDMEASURE( M1, M2, ... )
Parametreler
T ERIM TA N IM
Döndürülen değer
Mevcut bağlamdaki ölçünün parametre listesinde belirtilenlerden biri olup olmadığını belirten Boole değeri.
Açıklamalar
Yalnızca hesaplama öğesi ifadesinde başvurulabilir.
Örnek
Aşağıdaki hesaplama öğesi ifadesi, geçerli ölçünün parametre listesinde belirtilenlerden biri olup olmadığını
denetler. Ölçülerin yeniden adlandırılması durumunda formül, ifadedeki ad değişikliklerini yansıtacak şekilde
düzeltilir.
IF (
ISSELECTEDMEASURE ( [Expense Ratio 1], [Expense Ratio 2] ),
SELECTEDMEASURE (),
DIVIDE ( SELECTEDMEASURE (), COUNTROWS ( DimDate ) )
)
Ayrıca bkz.
SELECTEDMEASURE
SELECTEDMEASURENAME
NATURALINNERJOIN
9.05.2020 • 2 minutes to read
Bir tablo ile başka bir tablo arasında iç birleşim gerçekleştirir. Tablolar, ortak sütunlar (ada göre) kullanılarak
birleştirilir. İki tabloda ortak sütun adı yoksa hata döndürülür.
Sözdizimi
NATURALINNERJOIN(<leftJoinTable>, <rightJoinTable>)
Parametreler
T ERIM TA N IM
Döndürülen değer
İki tabloda da mevcut olan ortak sütun değerlerine ait satırları içeren tablo. Döndürülen tablo, soldaki tabloda yer
alan ortak sütunlara ve iki tablodaki diğer sütunlara sahip olur.
Açıklamalar
Sonuçlar için sıralama düzeni garantisi yoktur.
İki tablodaki birleştirilen sütunların aynı veri türüne ait olması gerekir.
Yalnızca aynı kaynak tablodaki (kökeni aynı olan) sütunlar birleştirilir. Örneğin Products[ProductID],
WebSales[ProductdID], StoreSales[ProductdID], [ProductID] altında birleştirilirken WebSales ile StoreSales
arasındaki çok-bir ilişkileri ve ProductID sütununa göre Products tablosu dikkate alınır.
Birleştirme sırasında katı karşılaştırma semantik yaklaşımları kullanılır. Tür zorlaması yoktur. Örneğin 1 ile 1,0 eşit
değildir.
NATURALLEFTOUTERJOIN
8.05.2020 • 2 minutes to read
Bir tablo ile başka bir tablo arasında iç birleşim gerçekleştirir. Tablolar, ortak sütunlar (ada göre) kullanılarak
birleştirilir. İki tabloda ortak sütun adı yoksa hata döndürülür.
Söz dizimi
NATURALLEFTOUTERJOIN(<leftJoinTable>, <rightJoinTable>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Yalnızca leftJoinTable tablosunda da mevcut olan ortak sütun değerlerine ait rightJoinTable satırlarını içeren tablo.
Döndürülen tablo, soldaki tabloda yer alan ortak sütunlara ve iki tablodaki diğer sütunlara sahip olur.
Açıklamalar
Sonuçlar için sıralama düzeni garantisi yoktur.
İki tablodaki birleştirilen sütunların aynı veri türüne ait olması gerekir.
Yalnızca aynı kaynak tablodaki (kökeni aynı olan) sütunlar birleştirilir. Örneğin Products[ProductID],
WebSales[ProductdID], StoreSales[ProductdID], [ProductID] altında birleştirilirken WebSales ile StoreSales
arasındaki çok-bir ilişkileri ve ProductID sütununa göre Products tablosu dikkate alınır.
Birleştirme sırasında katı karşılaştırma semantik yaklaşımları kullanılır. Tür zorlaması yoktur. Örneğin 1 ile 1,0 eşit
değildir.
SELECTEDMEASURE
8.05.2020 • 2 minutes to read
İfadeler tarafından hesaplama öğelerinin bağlam içindeki ölçüye başvurmasını sağlamak için kullanılır.
NOTE
Bu işlev şu anda yalnızca SQL Server 2019 Analysis Services CTP 2.3 ve üzeri için geçerlidir.
Sözdizimi
SELECTEDMEASURE()
Parametreler
Hiçbiri
Döndürülen değer
Hesaplama öğesi değerlendirildiğinde bağlam içinde olan ölçü başvurusu.
Açıklamalar
Yalnızca hesaplama öğesi ifadesinde başvurulabilir.
Örnek
Aşağıdaki hesaplama öğesi ifadesi, bağlam içindeki ölçü için yıldan bugüne hesabı gerçekleştirir.
CALCULATE(SELECTEDMEASURE(), DATESYTD(DimDate[Date]))
Ayrıca bkz.
SELECTEDMEASURENAME
ISSELECTEDMEASURE
SELECTEDMEASUREFORMATSTRING
9.05.2020 • 2 minutes to read
İfadeler tarafından hesaplama öğelerinin bağlam içindeki ölçünün biçim dizesini alması için kullanılır.
NOTE
Bu işlev şu anda yalnızca SQL Server 2019 Analysis Services CTP 2.3 ve üzeri için geçerlidir.
Sözdizimi
SELECTEDMEASUREFORMATSTRING()
Parametreler
Hiçbiri
Döndürülen değer
Hesaplama öğesi değerlendirildiğinde bağlam içinde olan ölçü biçim dizesini tutan dize.
Açıklamalar
Bu işleve yalnızca hesaplama gruplarındaki hesaplama öğelerine ait ifadelerde başvurulabilir. Hesaplama öğelerinin
Biçimlendirme Dizesi İfadesi özelliği tarafından kullanılmak üzere tasarlanmıştır.
Örnek
Aşağıdaki ifade, bir hesaplama öğesinin Biçimlendirme Dizesi İfadesi tarafından değerlendirilir. Filtre bağlamında
tek bir para birimi varsa biçimlendirme dizesi DimCurrency[FormatString] sütunundan alınır, yoksa bağlamdaki
ölçünün biçimlendirme dizesi kullanılır.
Ayrıca bkz.
SELECTEDMEASURE
ISSELECTEDMEASURE
SELECTEDMEASURENAME
8.05.2020 • 2 minutes to read
İfadeler tarafından hesaplama öğelerinin bağlam içindeki ölçüye adla başvurmasını sağlamak için kullanılır.
NOTE
Bu işlev şu anda yalnızca SQL Server 2019 Analysis Services CTP 2.3 ve üzeri için geçerlidir.
Sözdizimi
SELECTEDMEASURENAME()
Parametreler
Hiçbiri
Döndürülen değer
Hesaplama öğesi değerlendirildiğinde bağlam içinde olan ölçü adını tutan dize değeri.
Açıklamalar
Yalnızca hesaplama öğesi ifadesinde başvurulabilir.
Bu işlev genellikle hesaplama grupları yazarken hata ayıklama amacıyla kullanılır.
Örnek
Aşağıdaki hesaplama öğesi ifadesi, geçerli ölçümün Expense Ratio olup olmadığını denetler ve hesaplama
mantığını koşullu olarak uygular. Denetim bir dize karşılaştırmasını temel aldığından formül düzeltmesi yapılmaz
ve nesnenin yeniden adlandırılması durumunda otomatik olarak güncelleştirilmez. Formül düzeltmesinden
faydalanan benzer bir karşılaştırma için lütfen ISSLECTEDMEASURE işlevine bakın.
IF (
SELECTEDMEASURENAME = "Expense Ratio",
SELECTEDMEASURE (),
DIVIDE ( SELECTEDMEASURE (), COUNTROWS ( DimDate ) )
)
Ayrıca bkz.
SELECTEDMEASURE
ISSELECTEDMEASURE
SUMMARIZECOLUMNS
8.05.2020 • 10 minutes to read
Sözdizimi
SUMMARIZECOLUMNS( <groupBy_columnName> [, < groupBy_columnName >]…, [<filterTable>]…[, <name>, <expression>]…)
Parametreler
T ERIM TA N IM
ifade Tek bir değer (tablo değil) döndüren bir DAX ifadesi.
Döndürülen değer
Belirtilen gruplandırma ölçütlerine bağlı olarak verilen sütunlardaki değer birleşimlerini içeren tablo. Yalnızca
sağlanan ifadelerden en az birinin boş olmayan değer döndürdüğü satırlar döndürülen tabloya dahil edilir. Tüm
ifadelerin bir satır için BLANK/NULL sonucu vermesi durumunda ilgili satır döndürülen tabloya dahil edilmez.
Açıklamalar
SUMMARIZECOLUMNS işlevi, sonuçlar için herhangi bir sıralama düzeni garantisi vermez.
Bir sütun groupBy_columnName parametresinde birden fazla belirtilemez. Örneğin aşağıdaki formüller
geçersizdir.
SUMMARIZECOLUMNS( Sales[StoreId], Sales[StoreId] )
Filtre ba ğlamı
Şu sorguyu inceleyin:
groupBy sütunları filtreden etkilenen bir sütuna sahiptir ve bu filtre groupBy sonuçlarına uygulanır.
Seçenekler
IGNORE
IGNORE() söz dizimi, belirli ifadeleri BLANK/NULL değerlendirmesinin dışında bırakarak SUMMARIZECOLUMNS
işlevinin davranışını değiştirmek için kullanılabilir. IGNORE kullanmayan tüm ifadelerin BLANK/NULL döndürdüğü
satırlar, IGNORE kullanan ifadelerin BLANK/NULL döndürüp döndürmediğinden bağımsız olarak hariç tutulur.
Sözdizimi
IGNORE(<expression>)
SUMMARIZECOLUMNS ile
Parametreler
T ERIM TA N IM
ifade Tek bir değer (tablo değil) döndüren bir DAX ifadesi.
Döndürülen değer
Bu işlev bir değer döndürmez.
Açıklamalar
IGNORE, SUMMARIZECOLUMNS için ifade bağımsız değişkeni olarak kullanılabilir.
Örnek
Bu değer Sales[CustomerId] sütununu toplar ve verilen gruplandırmadaki tüm müşteriler için bir alt toplam
oluşturur. IGNORE kullanılmadığında sonuç şu olur:
A 5
B 3 3
C 3 3
IGNORE ile
B 3 3
C 3 3
İki ifade de bazı satırlar için boş değer döndürse de boş değer döndüren yoksayılmamış ifade olmadığından bu
satırlar dahil edilir.
A 5
NONVISUAL
SUMMARIZECOLUMNS işlevindeki bir değer filtresini ölçü değerlerini etkilemeyecek, yalnızca gruplandırma
sütunlarına uygulanacak şekilde işaretler.
Sözdizimi
NONVISUAL(<expression>)
Döndürülen değer
Değer tablosu.
Örnek
DEFINE
MEASURE FactInternetSales[Sales] = SUM(FactInternetSales[Sales Amount])
EVALUATE
SUMMARIZECOLUMNS
(
DimDate[CalendarYear],
NONVISUAL(TREATAS({2007, 2008}, DimDate[CalendarYear])),
"Sales", [Sales],
"Visual Total Sales", CALCULATE([Sales], ALLSELECTED(DimDate[CalendarYear]))
)
ORDER BY [CalendarYear]
Sonuç
[Visual Total Sales] sütununun tüm yılların toplamını içerdiği sonucu döndürür:
DEFINE
MEASURE FactInternetSales[Sales] = SUM(FactInternetSales[Sales Amount])
EVALUATE
SUMMARIZECOLUMNS
(
DimDate[CalendarYear],
TREATAS({2007, 2008}, DimDate[CalendarYear]),
"Sales", [Sales],
"Visual Total Sales", CALCULATE([Sales], ALLSELECTED(DimDate[CalendarYear]))
)
ORDER BY [CalendarYear]
Sonuç
[Visual Total Sales] sütununun seçilen iki yılın toplamını içerdiği sonucu döndürür:
ROLLUPADDISSUBTOTAL ()
ROLLUPADDISSUBTOTAL söz diziminin eklenmesi, SUMMARIZECOLUMNS işlevinin davranışını değiştirerek
groupBy_columnName sütunlarının sonucuna toplu/alt toplam değer satırları eklemesini sağlar.
Sözdizimi
Parametreler
T ERIM TA N IM
Döndürülen değer
İşlev bir değer döndürmez. Yalnızca alt toplamı alınacak sütun kümesini belirtir.
Örnek
Tek alt toplam
DEFINE
VAR vCategoryFilter =
TREATAS({"Accessories", "Clothing"}, Product[Category])
VAR vSubcategoryFilter =
TREATAS({"Bike Racks", "Mountain Bikes"}, Product[Subcategory])
EVALUATE
SUMMARIZECOLUMNS
(
ROLLUPADDISSUBTOTAL
(
Product[Category], "IsCategorySubtotal", vCategoryFilter,
Product[Subcategory], "IsSubcategorySubtotal", vSubcategoryFilter
),
"Total Qty", SUM(Sales[Qty])
)
ORDER BY
[IsCategorySubtotal] DESC, [Category],
[IsSubcategorySubtotal] DESC, [Subcategory]
Sonuç
Satışlar eyalete, müşteriye, tarihe göre gruplanır ve alt toplamları 1 olur. Eyalete ve tarihe göre satışlar, 2. Eyalete ve
Müşteriye göre satışlar, 3. Hem müşteri hem de eyalete ve tarihe göre satış olarak toplanır.
Sonuç
A FALSE WA 5 7/10/2014
B FALSE WA 1 7/10/2014
B FALSE WA 2 7/11/2014
ISC USTO M ERSUB
C USTO M ERID TOTA L DURUM TOTA L QT Y TA RIH ISDAT ESUBTOTA L
C FALSE OR 2 7/10/2014
C FALSE OR 1 7/11/2014
TRUE WA 6 7/10/2014
TRUE WA 2 7/11/2014
TRUE OR 2 7/10/2014
TRUE OR 1 7/11/2014
A FALSE WA 5 TRUE
B FALSE WA 3 TRUE
C FALSE OR 3 TRUE
TRUE WA 8 TRUE
TRUE OR 3 TRUE
ROLLUPGROUP()
SUMMARIZE işlevinde olduğu gibi ROLLUPGROUP da ROLLUPADDISSUBTOTAL işlevi ile birlikte kullanılarak dahil
edilecek özet gruplar/ayrıntı düzeyleri (alt toplamlar) belirtilebilir (bu sayede döndürülen alt toplam satırı sayısı
azaltılabilir).
Sözdizimi
ROLLUPGROUP(<groupBy_columnName>, <groupBy_columnName>)
ROLLUPADDISSUBTOTAL ile
Parametreler
T ERIM TA N IM
Döndürülen değer
İşlev bir değer döndürmez. ROLLUPADDISSUBTOTAL tarafından alt toplam oluşturma sırasında gruplandırılacak
sütun kümesini işaretler.
Açıklamalar
ROLLUPGROUP yalnızca ROLLUPADDISSUBTOTAL veya SUMMARIZE işlevinde groupBy_columnName bağımsız
değişkeni olarak kullanılabilir.
Örnek
Birden çok alt toplam
Yine Şehir ve Eyalet ile gruplanmıştır ancak alt toplam bildirilirken bir araya toplanır.
Sonuç
A FALSE 5 FALSE
B FALSE 3 TRUE
C FALSE 3 TRUE
TRUE 11 TRUE
Ayrıca bkz.
SUMMARIZE işlevi (DAX)
Tablo Oluşturucu
8.05.2020 • 2 minutes to read
Bir veya daha fazla sütuna sahip olan bir tablo döndürür.
Sözdizimi
{ <scalarExpr1>, <scalarExpr2>, … }
{ ( <scalarExpr1>, <scalarExpr2>, … ), ( <scalarExpr1>, <scalarExpr2>, … ), … }
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir veya daha fazla sütuna sahip olan bir tablo. Yalnızca bir sütun olduğunda sütunun adı Değer olur. N > 1 olmak
üzere N sütun olduğunda sütun adları soldan sağa Değer1, Değer2, …, DeğerN şeklinde gider.
Açıklamalar
İlk sözdizimi tek sütunlu bir tablo döndürür. İkinci sözdizimi bir veya daha fazla sütuna sahip olan bir tablo
döndürür.
Skaler ifade sayısı tüm satırlarda aynı olabilir.
Bir sütundaki veri türleri diğer satırlardan farklı olduğunda tüm değerler ortak bir veri türüne dönüştürülür.
Örnekler
Örnek 1
Aşağıdaki DAX sorguları:
EVALUATE { 1, 2, 3 }
reservedStorageGb
[ DE ĞER]
1
[ DE ĞER]
Örnek 2
Şu DAX sorgusu:
EVALUATE
{
(1.5, DATE(2017, 1, 1), CURRENCY(199.99), "A"),
(2.5, DATE(2017, 1, 2), CURRENCY(249.99), "B"),
(3.5, DATE(2017, 1, 3), CURRENCY(299.99), "C")
}
Örnek 3
Aşağıdaki DAX işlevi:
[ DE ĞER]
01.01.2017
TRUE
A
TREATAS
26.05.2020 • 2 minutes to read
Bir tablo ifadesinin sonucunu, ilişkili olmayan bir tablodaki sütunlara filtre olarak uygular.
Söz dizimi
TREATAS(table_expression, <column>[, <column>[, <column>[,…]]]} )
Parametreler
T ERIM TA N IM
sütun Var olan bir veya daha fazla sütun. Bu değer bir ifade olamaz.
Döndürülen değer
tablo_ifadesi içinde de bulunan tüm sütun satırlarını içeren bir tablo.
Açıklamalar
Belirtilen sütun sayısı, tablo ifadesindeki sütun sayısıyla eşleşmelidir ve aynı sırada olmalıdır.
Tablo ifadesinde döndürülen bir değer sütunda yoksa o değer yoksayılır. Örneğin TREATAS({"Red", "Green",
"Yellow"}, DimProduct[Color]), DimProduct[Color] sütununa "Red", "Green" ve "Yellow" değerleri ile bir filtre
uygular. DimProduct[Color] içinde "Yellow" yoksa "Red" ve "Green" değerleri geçerli olur.
Tablolar arasında bir ilişki mevcut olmadığında kullanmak için idealdir. Tablolar arasında birden çok ilişki varsa
USERELATIONSHIP kullanabilirsiniz.
Örnekler
Aşağıdaki örnekte verilen model, aralarında ilişki olmayan iki ürün tablosu içermektedir. Kullanıcının
DimProduct1[ProductCategory] sütununa Bikes, Seats, Tires filtrelerini uygulaması durumunda Bikes, Seats, Tires
filtresi DimProduct2[ProductCategory] sütununa da uygulanır.
CALCULATE(
SUM(Sales[Amount]),
TREATAS(VALUES(DimProduct1[ProductCategory]), DimProduct2[ProductCategory])
)
Ayrıca bkz.
INTERSECT işlevi
FILTER işlevi
USERELATIONSHIP
UNION
8.05.2020 • 2 minutes to read
Sözdizimi
UNION(<table_expression1>, <table_expression2> [,<table_expression>]…)
Parametreler
T ERIM TA N IM
Döndürülen değer
İki tablo ifadesindeki tüm satırları içeren tablo.
Açıklamalar
İki tablodaki sütun sayısının aynı olması gerekir.
Örnek
Aşağıdaki ifade, USAInventory tablosu ile INDInventory tablosunu tek bir tablo halinde birleştirerek bir birleşim
oluşturur:
UNION(UsaInventory, IndInventory)
USAInventor y
ÜL K E DURUM SAY I TO P L A M
ABD CA 5 500
ÜL K E DURUM SAY I TO P L A M
ABD WA 10 900
INDInventor y
ÜL K E DURUM SAY I TO P L A M
IND JK 20 800
IND MH 25 1000
IND WB 10 900
Döndürülen tablo
ÜL K E DURUM SAY I TO P L A M
ABD CA 5 500
ABD WA 10 900
IND JK 20 800
IND MH 25 1000
IND WB 10 900
Üst ve alt öğe işlevleri
8.05.2020 • 2 minutes to read
Bu işlevler, üst/alt öğe hiyerarşileri olarak belirtilen verileri yönetir. Daha fazla bilgi edinmek için bkz. DAX'ta Üst-Alt
Öğe Hiyerarşileri ile ilgili işlevleri anlama.
Bu kategoride
İŞ L EV A Ç IK L A M A
PATHCONTAINS Belirtilen öğe, belirtilen yol içinde yer alıyorsa TRUE döndürür.
PATHLENGTH Kendi dahil olmak üzere, belirli bir PATH sonucunda belirtilen
öğeye üst öğe sayısını döndürür.
DAX'ta üst-alt öğe hiyerarşileri ile ilgili işlevleri
anlama
8.05.2020 • 6 minutes to read
DAX, kullanıcıların modellerinde üst-alt hiyerarşisi olarak sunulan verileri yönetmesine yardımcı olan beş işlev
sunar. Kullanıcılar bu işlevleri kullanarak bir satırın sahip olduğu tüm kökenleri, köken ile en üst öğe arasındaki
düzey sayısını, geçerli satırın n düzey üstündeki öğenin ne olduğunu, geçerli satır hiyerarşisinde en üstten n alttaki
öğenin ne olduğunu ve geçerli satır hiyerarşisindeki belirli bir üst öğeyi alabilir.
112
14 112
3 14
11 3
13 3
162 3
117 162
221 162
81 162
Yukarıdaki tabloda gördüğünüz gibi 112 numaralı çalışan için tanımlanmış üst öğe yoktur, 14 numaralı çalışanın
yöneticisi 112 numaralı çalışandır (ParentEmployeeKey), 3 numaralı çalışanın yöneticisi 14 numaralı çalışandır ve
11, 13 ile 162 numaralı çalışanların yöneticisi 3 numaralı çalışandır. Yukarıdaki veriler, 112 numaralı çalışanın
üzerinde bir yönetici olmadığını ve burada gösterilen tüm çalışanların en üst düzey yöneticisi olduğunu gösterir.
Aynı zamanda 3 numaralı çalışan 14 numaralı çalışana, 11, 13 ve 162 numaralı çalışanlar da 3 numaralı çalışana
rapor vermektedir.
Aşağıdaki tabloda kullanılabilir işlevler, işlevlerin kısa açıklamaları ve işlevlerin yukarıda gösterilen verilere
uygulandığı örnekler verilmiştir.
PATH işlevi (DAX): En eskiden veya en üsttekinden başlayıp geçerli olana kadar devam ederek geçerli satırın tüm üst
öğelerinin tanımlayıcılarını içeren sınırlandırılmış bir metin döndürür.
EM P LO Y EEK EY PA REN T EM P LO Y EEK EY YOL
112 112
14 112 112|14
3 14 112|14|3
11 3 112|14|3|11
13 3 112|14|3|13
162 3 112|14|3|162
81 162 112|14|3|162|81
PATHLENGTH işlevi (DAX): Belirli bir PATH() içinde geçerli düzeyden başlayıp en eski veya en üstteki düzeye kadar
olan düzeylerin sayısını döndürür. Aşağıdaki örnekte PathLength sütunu " =PATHLENGTH([Path]) " olarak
tanımlanmıştır. Bu işlevin nasıl çalıştığının anlaşılmasına yardımcı olmak için örnekte Path() örneğindeki tüm
verilere yer verilmiştir.
112 112 1
14 112 112|14 2
3 14 112|14|3 3
11 3 112|14|3|11 4
13 3 112|14|3|13 4
162 3 112|14|3|162 4
81 162 112|14|3|162|81 5
PATHITEM işlevi (DAX): PATH() gibi bir sonuçta soldan sağa doğru sayım yaparak belirtilen konumdaki öğeyi
döndürür. Aşağıdaki örnekte soldan 4. olan PathItem sütunu, " =PATHITEM([Path], 4) " olarak tanımlanmıştır. Bu
örnek, Path() örneğindeki örnek verileri kullanarak Path dizesinde soldan dördüncü EmployeKey anahtarını
döndürmektedir.
EM P LO Y EEK EY PA REN T EM P LO Y EEK EY YOL PAT H IT EM - SO L DA N 4.
112 112
14 112 112|14
3 14 112|14|3
11 3 112|14|3|11 11
13 3 112|14|3|13 13
PATHITEMREVERSE işlevi (DAX): PATH() gibi bir işlevin sonucunda sağdan sola doğru sayarak konum içindeki öğeyi
döndürür.
Aşağıdaki örnekte sağdan 3. olan PathItemReverse sütunu, " =PATHITEMREVERSE([Path], 3) " olarak tanımlanmıştır.
Bu örnek, Path() örneğindeki örnek verileri kullanarak Path dizesinde sağdan üçüncü EmployeKey anahtarını
döndürmektedir.
PAT H IT EM REVERSE -
EM P LO Y EEK EY PA REN T EM P LO Y EEK EY YOL SA ĞDA N 3.
112 112
14 112 112|14
3 14 112|14|3 112
11 3 112|14|3|11 14
13 3 112|14|3|13 14
162 3 112|14|3|162 14
81 162 112|14|3|162|81 3
PATHCONTAINS işlevi (DAX): Belirtilen öğe, belirtilen yol içinde yer alıyorsa TRUE döndürür. Aşağıdaki örnek
PathContains sütununda 162 numaralı çalışan " =PATHCONTAINS([Path], "162") " olarak tanımlanmıştır. Verilen yolda
162 numaralı çalışanın mevcut olması durumunda bu örnek TRUE döndürür. Bu örnek, yukarıdaki Path()
örneğinde elde edilen sonuçları kullanır.
PAT H C O N TA IN S - 162
EM P LO Y EEK EY PA REN T EM P LO Y EEK EY YOL N UM A RA L I Ç A L I Ş A N
3 14 112|14|3 FALSE
11 3 112|14|3|11 FALSE
13 3 112|14|3|13 FALSE
En eskiden başlayıp geçerli olana kadar devam ederek geçerli tanımlayıcının tüm üst öğelerinin tanımlayıcılarını
içeren sınırlandırılmış bir metin dizesi döndürür.
Sözdizimi
PATH(<ID_columnName>, <parent_columnName>)
Parametreler
T ERIM TA N IM
parent_columnName Geçerli satırın üst öğesi için benzersiz tanımlayıcıyı içeren var
olan bir sütunun adı. Bu bir ifade olamaz. parent_columnName
değerinin veri türü metin veya tamsayı olmalıdır. Ayrıca
ID_columnName içindeki değerle aynı veri türünde olmalıdır.
Döndürülen değer
Geçerli tanımlayıcının tüm üst öğelerinin tanımlayıcılarını içeren sınırlandırılmış metin dizesi.
Açıklamalar
Bu işlev, geçerli satır değeri ile ilgili öğeleri döndürmek için bir tür iç hiyerarşiye sahip olan tablolarda kullanılır.
Örneğin çalışanların, çalışanların yöneticilerinin ve yöneticilerin yöneticilerinin yer aldığı bir Çalışanlar tablosunda
bir çalışanı yöneticisine bağlayan yolu döndürebilirsiniz.
Yol, tek bir üst-alt ilişki düzeyi ile sınırlı değildir. Belirtilen başlangıç satırından birkaç düzey yukarıda olan ilişkili
satırları döndürebilir.
Üst öğeleri ayırmak için sınırlayıcı olarak dikey çubuk "|" kullanılır.
ID_columnName ve parent_columnName içindeki değerlerin aynı veri türüne (metin veya tamsayı) sahip
olması gerekir.
parent_columnName içindeki değerler ID_columnName içinde mevcut olmalıdır. Başka bir deyişle alt öğe
düzeyinde değer yoksa üst öğe için arama yapamazsınız.
parent_columnName BLANK ise PATH() işlevi ID_columnName değerini döndürür. Başka bir deyişle bir
çalışanın yöneticisini arıyorsanız ancak parent_columnName sütununda veri yoksa PATH işlevi yalnızca
çalışan kimliğini döndürür.
ID_columnName içinde yinelenen değerler varsa ve parent_columnName içinde de aynı yinelenen değerler
mevcutsa PATH() işlevi ortak parent_columnName değerini döndürür. Ancak parent_columnName içinde
yinelenen değerler için farklı değerler mevcutsa PATH() bir hata döndürür. Başka bir deyişle aynı çalışan
kimliği için iki liste girişi varsa ve ikisindeki yönetici kimliği aynıysa PATH işlevi o yöneticinin kimliğini
döndürür. Ancak farklı yönetici kimliklerine sahip olan iki aynı çalışan kimliği varsa PATH işlevi bir hata
döndürür.
ID_columnName BLANK ise PATH() işlevi BLANK döndürür.
ID_columnName içinde dikey çubuk "|" varsa PATH() işlevi bir hata döndürür.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek, her bir çalışana ait tüm yöneticileri listeleyen bir hesaplanmış sütun oluşturur.
=PATH(Employee[EmployeeKey], Employee[ParentEmployeeKey])
PATHCONTAINS
8.05.2020 • 2 minutes to read
Sözdizimi
PATHCONTAINS(<path>, <item>)
Parametreler
yol
Bir PATH işlevinin değerlendirilmesinin sonucu olarak oluşturulan bir dize.
öğe
Yol sonucunda aranacak metin ifadesi.
Döndürülen değer
öğe, yol içinde mevcutsa TRUE , değilse FALSE .
Açıklamalar
öğe bir tamsayı ise önce metne dönüştürülür, daha sonra formül değerlendirilir. Dönüştürme başarısız olursa işlev
bir hata döndürür.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek, bir yönetici kimliği değeri alıp çalışanları denetleyen bir hesaplanmış sütun oluşturur. Yönetici
kimliğinin PATH işlevi tarafından döndürülen yönetici listesine ait olması durumunda PATHCONTAINS işlevi true,
aksi takdirde false döndürür.
Bir PATH işlevinin değerlendirilmesinden alınan bir dizeden, belirtilen konumdaki öğeyi döndürür. Konumlar
soldan sağa doğru sayılır.
Sözdizimi
PATHITEM(<path>, <position>[, <type>])
Parametreler
yol
Bir PATH işlevinin sonuçları biçimindeki bir metin dizesi.
konum
Döndürülecek öğenin konumuna sahip bir tamsayı ifadesi.
type
(İsteğe bağlı) Sonucun veri türünü tanımlayan bir sabit listesi:
Döndürülen değer
PATH işlevi tarafından tanımlayıcı listesindeki belirtilen konumda döndürülen tanımlayıcı. PATH işlevi tarafından
döndürülen öğeler, en uzaktan güncel olana doğru sıralanır.
Açıklamalar
Bu işlev, bir PATH işlevi tarafından döndürülen bir hiyerarşiden belirli bir düzeyi döndürmek için
kullanılabilir. Örneğin, tüm çalışanlar için yalnızca bir üst düzeydeki yöneticileri döndürebilirsiniz.
konum için birden (1) küçük veya yol içindeki öğe sayısından büyük bir sayı belirtmeniz durumunda
PATHITEM işlevi BLANK döndürür.
tür geçerli bir sabit listesi öğesi değilse bir hata döndürülür.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek, geçerli çalışanın üçüncü düzey yöneticisini döndürür. Çalışan ve yönetici kimliklerini, geçerli
çalışanın üstlerinin yer aldığı bir hiyerarşiye sahip olan dize döndüren PATH işlevi girişi olarak kullanır. PATHITEM
bu dizedeki üçüncü girişi tamsayı olarak döndürür.
=PATHITEM(PATH(Employee[EmployeeKey], Employee[ParentEmployeeKey]), 3, 1)
PATHITEMREVERSE
9.05.2020 • 2 minutes to read
Bir PATH işlevinin değerlendirilmesinden alınan bir dizeden, belirtilen konumdaki öğeyi döndürür. Konumlar
sağdan sola doğru ters olarak sayılır.
Söz dizimi
PATHITEMREVERSE(<path>, <position>[, <type>])
Parametreler
yol
Bir PATH işlevinin değerlendirilmesinden elde edilen bir metin dizesi.
konum
Döndürülecek öğenin konumuna sahip bir tamsayı ifadesi. Konum sağdan sola doğru ters olarak sayılır.
tür
(İsteğe bağlı) Sonucun veri türünü tanımlayan bir sabit listesi:
Döndürülen değer
Belirtilen yoldaki n konumu, geçerli konumdan en eskiye doğru sayılır.
Açıklamalar
Bu işlev, bir PATH işlevinden kaynaklanan bir hiyerarşiden tek bir öğe almak için kullanılabilir.
Bu işlev, hiyerarşinin standart sırasını tersine çevirir ve en yakın öğelerin ilk sırada listelenmesini sağlar.
Örneğin, PATH işlevi çalışanın hiyerarşideki yöneticilerinin listesini döndürürse, PATHITEMREVERSE işlevi
çalışanın 2. konumdaki üst yöneticisini döndürür. Bunun nedeni, 1. konumda çalışanın kimliğinin
bulunmasıdır.
konum için belirtilen sayının birden (1) küçük veya yol içindeki öğe sayısından büyük olması durumunda
PATHITEM işlevi BLANK döndürür.
tür geçerli bir sabit listesi öğesi değilse bir hata döndürülür.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek, PATH işlevi girişi olarak bir çalışan kimliği sütununu alır ve döndürülen en üst öğe listesini tersine
çevirir. Belirtilen konum 3, döndürülen tür ise 1 olur. Bu nedenle PATHITEMREVERSE işlevi, çalışanın iki düzey
üstündeki yöneticiyi temsil eden tamsayıyı döndürür.
=PATHITEMREVERSE(PATH(Employee[EmployeeKey], Employee[ParentEmployeeKey]), 3, 1)
PATHLENGTH
8.05.2020 • 2 minutes to read
Kendi dahil olmak üzere, belirli bir PATH sonucunda belirtilen öğeye üst öğe sayısını döndürür.
Söz dizimi
PATHLENGTH(<path>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Kendi dahil olmak üzere belirli bir PATH sonucunda belirtilen öğenin üst öğesi olan öğe sayısı.
Açıklamalar
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek, PATH işlevi girişi olarak bir çalışan kimliği alır ve hiyerarşide o çalışanın üzerindeki yöneticilerin
listesini döndürür. PATHLENGTH işlevi sonucu alır ve başladığınız çalışan dahil olmak üzere farklı çalışan ve yönetici
düzeylerini sayar.
=PATHLENGTH(PATH(Employee[EmployeeKey], Employee[ParentEmployeeKey]))
İstatistiksel işlevler
26.05.2020 • 8 minutes to read
Veri Çözümleme İfadeleri (DAX); toplam, sayı ve ortalama gibi toplamlar oluşturmak için birçok işlev sağlar. Bu
işlevler, Microsoft Excel'de kullanılan toplama işlevlerine çok benzer. Bu bölümde DAX içinde sunulan
istatistiksel ve toplama işlevleri listelenmiştir.
Bu kategoride
İŞ L EV A Ç IK L A M A
COUNTX Bir sayı veya tablo üzerinde değerlendirilen bir ifade için sayı
sonucu veren bir ifade içeren satır sayısını belirler.
DATATABLE Satır içi veri değerleri kümesi bildirmek için bir mekanizma
sağlar.
GENERATE tablo1 içindeki her satır ile tablo2 tablosunu table1 içindeki
geçerli satır bağlamında değerlendirmenin sonucunda elde
edilen değerin kartezyen çarpımını içeren bir tablo döndürür.
GENERATEALL tablo1 içindeki her satır ile tablo2 tablosunu table1 içindeki
geçerli satır bağlamında değerlendirmenin sonucunda elde
edilen değerin kartezyen çarpımını içeren bir tablo döndürür.
Söz dizimi
ADDCOLUMNS(<table>, <name>, <expression>[, <name>, <expression>]…)
Parametreler
T ERIM TA N IM
Döndürülen değer
Tüm özgün sütunlarını ve eklenmiş olanları içeren bir tablo.
Açıklamalar
Örnek
Aşağıdaki örnek, Product Category tablosunun bayi kanalından ve internet satışlarından elde edilen toplam satış
değerlerini içeren genişletilmiş bir sürümünü döndürür.
ADDCOLUMNS(ProductCategory,
, "Internet Sales", SUMX(RELATEDTABLE(InternetSales_USD), InternetSales_USD[SalesAmount_USD])
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD]))
Aşağıdaki tabloda, tablo almayı bekleyen işlevlerin alacağı verilerin önizlemesi gösterilmiştir:
ProductCategor y[P ProductCategor y[P ProductCategor y[P [Internet Sales] [Reseller Sales]
roductCategor yNa roductCategor yAlt roductCategor yKey
me] ernateKey] ]
Bileşenler 2 2 11205837,96
Sütundaki benzersiz değer içeren yaklaşık satır sayısını döndürür. Bu işlev, DISTINCTCOUNT işlevine kıyasla çok
miktarda veriyi daha iyi bir performansla sorgulayabilir ancak sonuçta küçük çaplı sapmalar olabilir.
Sözdizimi
APPROXIMATEDISTINCTCOUNT(<columnName>)
Parametreler
SÜRE A Ç IK L A M A
Döndürülen değer
Sütun içindeki farklı değerlerin yaklaşık sayısı.
Açıklamalar
Bu işlevin tek bağımsız değişkeni bir sütundur. Herhangi bir türde veri içeren sütunlar kullanabilirsiniz. İşlev
sayılacak satır bulamadığında BLANK döndürür, aksi takdirde farklı değerlerin sayısını döndürür.
Bu işlev önizleme aşamasındadır. Aşağıdaki sınırlamalar geçerlidir:
Bu işlev şu anda yalnızca aşağıdaki veri kaynaklarına yönelik DirectQuer y bağlantılarını desteklemektedir:
Azure SQL Veritabanı, Azure SQL Veri Ambarı.
Bu özellik, IntelliSense'de henüz kullanılabilir durumda değildir.
AVERAGE
8.05.2020 • 2 minutes to read
Söz dizimi
AVERAGE(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Sütundaki sayıların aritmetik ortalamasını temsil eden bir ondalık sayı döndürür.
Açıklamalar
Bu işlev bağımsız değişken olarak belirtilen bir sütun alır ve bu sütundaki değerlerin ortalamasını bulur. Sayı
kümesi sonucu veren bir ifadenin ortalamasını bulmak istiyorsanız AVERAGEX işlevini kullanın.
Sütundaki sayısal olmayan değerler şu şekilde işlenir:
Sütun metin içeriyorsa toplama yapılmaz ve işlev boş değer döndürür.
Sütunda mantıksal değerler veya boş hücreler varsa bu değerler yoksayılır.
Sıfır değerine sahip hücreler dahil edilir.
Hücrelerin ortalamasını alırken boş hücre ile 0 (sıfır) değerini içeren hücre arasındaki farkı göz önünde
bulundurmanız gerekir. Bir hücre 0 içerdiğinde sayı toplamına eklenir ve satır, bölen olarak kullanılan satır
sayısına dahil edilir. Ancak boş değerli hücrelerin yer aldığı satırlar sayılmaz.
Toplanacak satır olmadığında işlev boş değer döndürür. Ancak satırlar olmasına rağmen hiçbiri belirtilen ölçütlere
uygun değilse işlev 0 döndürür. Excel de koşulları karşılayan satır bulunamadığında sıfır döndürür.
Örnek
Aşağıdaki formül, InternetSales tablosunun ExtendedSalesAmount sütunundaki değerlerin ortalamasını döndürür.
=AVERAGE(InternetSales[ExtendedSalesAmount])
İlgili işlevler
AVERAGEX işlevi bağımsız değişken olarak, bir tablodaki her satır için değerlendirilen bir ifade alabilir. Bu sayede
hesaplama yapabilir ve ardından hesaplanmış değerlerin ortalamasını alabilirsiniz.
AVERAGEA işlevi, bağımsız değişken olarak bir sütun alır ancak bunun dışında aynı ada sahip Excel işleviyle aynıdır.
AVERAGEA işlevini kullanarak boş değer içeren bir sütunun ortalamasını hesaplayabilirsiniz.
AVERAGEA
8.05.2020 • 2 minutes to read
Sütundaki değerlerin ortalamasını (aritmetik ortalama) döndürür. Metinleri ve sayısal olmayan değerleri işler.
Sözdizimi
AVERAGEA(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
AVERAGEA işlevi bir sütunu alır ve içindeki sayıların ortalamasını hesaplar ancak aynı zamanda sayısal olmayan
veri türlerini de aşağıdaki kurallara göre işler:
TRUE olarak değerlendirilen değerler 1 sayılır.
FALSE olarak değerlendirilen değerler 0 (sıfır) sayılır.
Sayısal olmayan metin içeren değerler 0 (sıfır) sayılır.
Boş metin ("") 0 (sıfır) sayılır.
Hesaplamaya mantıksal değerleri ve başvurulan sayıların metin gösterimlerini dahil etmek istemiyorsanız
AVERAGE işlevini kullanın.
Toplanacak satır olmadığında işlev boş değer döndürür. Ancak satırlar olmasına rağmen hiçbiri belirtilen ölçütlere
uygun değilse işlev 0 döndürür. Microsoft Excel de koşulları karşılayan satır bulunamadığında sıfır döndürür.
Örnek
Aşağıdaki örnek, aşağıdaki tabloda verilen başvurulan sütunun içindeki boş olmayan hücrelerin ortalamasını
döndürür. AVERAGE işlevini kullandığınızda ortalama 21/2 olurken, AVERAGEA işlevinde sonuç 22/5 olur.
İŞ L EM K IM L I ĞI M IK TA R SO N UÇ
0000123 1 1 sayılır
0000124 20 20 sayılır
0000126 0 sayılır
=AVERAGEA([Amount])
Ayrıca bkz.
AVERAGE işlevi (DAX)
AVERAGEX işlevi (DAX)
İstatistiksel işlevler (DAX)
AVERAGEX
8.05.2020 • 2 minutes to read
Bir tablo üzerinde değerlendirilen ifade kümesinin ortalamasını (aritmetik ortalama) hesaplar.
Sözdizimi
AVERAGEX(<table>,<expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
AVERAGEX işlevi, bir tablonun her satırı için ifadeleri değerlendirmenizi ve ardından sonuç değer kümesini alıp
aritmetik ortalamasını hesaplamanızı sağlar. Bu nedenle işlev ilk bağımsız değişkeni olarak bir tablo ve ikinci
bağımsız değişken olarak bir ifadesi alır.
AVERAGEX işlevinin diğer kuralları AVERAGE ile aynıdır. Sayısal olmayan veya null hücreler ekleyemezsiniz. Hem
tablo hem de ifade bağımsız değişkenleri gereklidir.
Toplanacak satır olmadığında işlev boş değer döndürür. Satırlar olmasına rağmen hiçbiri belirtilen ölçütlere uygun
değilse işlev 0 döndürür.
Örnek
Aşağıdaki örnek, InternetSales tablosundaki her siparişin ortalama navlun ve vergi ücretini hesaplar ve bunun için
öncelikle her satırdaki Freight ve TaxAmt değerlerini toplayıp bu toplamların ortalamasını alır.
İkinci bağımsız değişken olarak kullanılan ifadede birden fazla işlem kullanırsanız hesaplama sırasını denetlemek
için ayraç kullanmanız gerekir. Daha fazla bilgi için bkz. DAX Söz Dizimi Başvurusu.
Ayrıca bkz.
AVERAGE işlevi (DAX)
AVERAGEA işlevi (DAX)
İstatistiksel işlevler (DAX)
BETA.DIST
9.05.2020 • 2 minutes to read
Beta dağıtımını döndürür. Beta dağıtımı genellikle, insanların gün içerisinde televizyon izledikleri sürenin güne oranı
gibi, bir öğenin örnekler içindeki yüzdesinde görülen değişimleri araştırmak üzere kullanılır.
Söz dizimi
BETA.DIST(x,alpha,beta,cumulative,[A],[B])
Parametreler
T ERIM TA N IM
Döndürülen değer
Beta dağıtımını döndürür.
Açıklamalar
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse BETA.DIST, #VALUE! hata değerini döndürür.
Bağımsız değişkenlerden biri bir tamsayı değilse yuvarlanır.
Alfa ≤ 0 veya beta ≤ 0 ise BETA.DIST, #NUM! hata değerini döndürür.
x < A, x > B veya A = B ise BETA.DIST, #NUM! hata değerini döndürür.
A ve B, BETA değerlerini atlarsanız, BETA.DIST standart kümülatif beta dağıtımını kullanır ve A = 0 ve B = 1 olur.
BETA.INV
8.05.2020 • 2 minutes to read
Sözdizimi
BETA.INV(probability,alpha,beta,[A],[B])
Parametreler
T ERIM TA N IM
Döndürülen değer
Beta kümülatif olasılık yoğunluğu işlevinin (BETA.DIST) tersini döndürür.
Açıklamalar
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse BETA.INV, #VALUE! hata değerini döndürür.
Bağımsız değişkenlerden biri bir tamsayı değilse yuvarlanır.
Alfa ≤ 0 veya beta ≤ 0 ise BETA.INV, #NUM! hata değerini döndürür.
Olasılık ≤ 0 veya olasılık > 1 ise BETA.INV, #NUM! hata değerini döndürür.
A ve B, BETA değerlerini atlarsanız, BETA.INV standart kümülatif beta dağıtımını kullanır ve A = 0 ve B = 1 olur.
CHISQ.DIST
15.05.2020 • 2 minutes to read
Söz dizimi
CHISQ.DIST(<x>, <deg_freedom>, <cumulative>)
Parametreler
T ERIM TA N IM
kümülatif İşlevin biçimi belirleyen mantıksal bir değer. Kümülatif TRUE ise
CHISQ.DIST kümülatif dağılım fonksiyonunu döndürür; FALSE
ise olasılık yoğunluğu fonksiyonunu döndürür.
Döndürülen değer
Kikare dağıtımı.
Açıklamalar
x veya deg_freedom sayısal değilse bir hata döndürülür.
deg_freedom tamsayı değilse yuvarlanır.
x < 0 ise bir hata döndürülür.
deg_freedom < 1 veya deg_freedom > 10^10 değilse bir hata döndürülür.
Örnek
Aşağıdaki DAX işlevi
Şunu döndürür:
[ DE ĞER]
0.632120558828558
CHISQ.DIST.RT
15.05.2020 • 2 minutes to read
Söz dizimi
CHISQ.DIST.RT(<x>, <deg_freedom>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Kikare dağıtımının sağ kuyruklu olasılığı.
Açıklamalar
x veya deg_freedom sayısal değilse bir hata döndürülür.
deg_freedom tamsayı değilse yuvarlanır.
x < 0 ise bir hata döndürülür.
deg_freedom < 1 veya deg_freedom > 10^10 değilse bir hata döndürülür.
Örnek
Aşağıdaki DAX işlevi
EVALUATE { CHISQ.DIST.RT(2, 5) }
Şunu döndürür:
[ DE ĞER]
0.84914503608461
CHISQ.INV
8.05.2020 • 2 minutes to read
Sözdizimi
CHISQ.INV(probability,deg_freedom)
Parametreler
T ERIM TA N IM
Döndürülen değer
Kikare dağılımının sol kuyruklu olasılığının tersini döndürür.
Açıklamalar
Bağımsız değişken sayısal olmayan bir değerse CHISQ.INV, #VALUE! hata değerini döndürür.
Olasılık < 0 veya olasılık > 1 ise CHISQ.INV, #NUM! hata değerini döndürür.
deg_freedom tamsayı değilse yuvarlanır.
deg_freedom < 1 veya deg_freedom > 10^10 ise CHISQ.INV, #NUM! hata değerini döndürür.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Sözdizimi
CHISQ.INV.RT(probability,deg_freedom)
Parametreler
T ERIM TA N IM
Döndürülen değer
Kikare dağılımının sağ kuyruklu olasılığının tersini döndürür.
Açıklamalar
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse CHISQ.INV.RT, #VALUE! hata değerini döndürür.
Olasılık < 0 veya olasılık > 1 ise CHISQ.INV.RT, #NUM! hata değerini döndürür.
deg_freedom tamsayı değilse yuvarlanır.
deg_freedom < 1 ise CHISQ.INV.RT, #NUM! hata değerini döndürür.
Olasılık değeri verildiğinde CHISQ.INV.RT bu değeri CHISQ.DIST.RT(x, deg_freedom) = olasılık olacak şekilde arar. Bu
nedenle CHISQ.INV.RT hassasiyeti, CHISQ.DIST.RT hassasiyetine bağlıdır. CHISQ.INV.RT yinelemeli arama tekniği
kullanır. Arama 64 yinelemeden sonra yakınsamazsa, işlev #N/A hata değerini döndürür.
CONFIDENCE.NORM
8.05.2020 • 3 minutes to read
Olasılık aralığı bir değer aralığıdır. Örnek ortalamanız olan x, bu aralığın ortasındadır ve aralık x ±
CONFIDENCE.NORM şeklindedir. Örneğin x değeri posta ile sipariş edilen ürünlerin teslim sürelerinin örnek
ortalaması ise x ± CONFIDENCE.NORM, popülasyon ortalaması aralığıdır. Herhangi bir popülasyon ortalaması μ0
için bu aralıkta μ0 ve x ötesinde bir örnek ortalaması elde etme olasılığı alfa değerinden büyüktür. Herhangi bir
popülasyon ortalaması μ0 için bu aralık dışında μ0 ve x ötesinde bir örnek ortalaması elde etme olasılığı alfa
değerinden küçüktür. Başka bir deyişle, popülasyon ortalaması μ0 olduğu varsayımın önem düzeyi olan alfa
değerinde iki kuyruklu bir test oluşturmak için x, standard_dev ve boyut kullandığınızı varsayalım. Bu durumda μ0
olasılık aralığına sahip ise bu varsayımını reddedemez ancak μ0 olasılık aralığında değilse bu varsayımını reddeder.
Olasılık aralığı, bir sonraki paketimizin olasılık aralığında olan bir teslim süresi alacak olasılık 1 – alfa olduğunu
göstermemize izin vermez.
Söz dizimi
CONFIDENCE.NORM(alpha,standard_dev,size)
Parametreler
T ERIM TA N IM
Döndürülen değer
Değer aralığı
Açıklamalar
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse CONFIDENCE.NORM, #VALUE! hata değerini döndürür.
Alfa ≤ 0 veya alfa ≥ 1 ise CONFIDENCE.NORM #NUM! hata değerini döndürür.
standard_dev ≤ 0 ise CONFIDENCE.NORM, #NUM! hata değerini döndürür.
Boyut bir tamsayı değilse yuvarlanır.
boyut < 1 ise CONFIDENCE.NORM, #NUM! hata değerini döndürür.
Alfa eşittir 0,05 olarak kabul edersek (1-alfa) veya yüzde 95'e eşit olan standart normal eğri altındaki alanı
hesaplamanız gerekir. Bu değer ± 1,96 olur. Bu nedenle olasılık aralığı şu şekilde olur:
CONFIDENCE.T
8.05.2020 • 2 minutes to read
Söz dizimi
CONFIDENCE.T(alpha,standard_dev,size)
Parametreler
T ERIM TA N IM
Döndürülen değer
Öğrencinin t dağıtımını kullanarak popülasyon ortalaması için güvenirlik aralığını döndürür.
Açıklamalar
Bağımsız değişkenlerden biri, sayısal olmayan bir değerse CONFIDENCE.T, #VALUE! hata değerini döndürür.
Alfa ≤ 0 veya alfa ≥ 1 ise CONFIDENCE.T, #NUM! hata değerini döndürür.
standard_dev ≤ 0 ise CONFIDENCE.T, #NUM! hata değerini döndürür.
Boyut bir tamsayı değilse yuvarlanır.
Boyut 1'e eşitse CONFIDENCE.T, #DIV/0! hata değerini döndürür.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Söz dizimi
COT (<number>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Belirli açının kotanjantı.
Açıklamalar
Sayının mutlak değerinin 2^27’den az olması gerekir ve bu sayı sıfıra eşit olamaz.
Sayı bu kısıtlamanın dışındaysa bir hata döndürülür.
Sayı, sayısal olmayan bir değere eşitse bir hata döndürülür.
Örnek
Aşağıdaki DAX işlevi
EVALUATE { COT(30) }
Şunu döndürür:
[ DE ĞER]
-0.156119952161659
COTH
15.05.2020 • 2 minutes to read
Söz dizimi
COTH (<number>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Belirli açının hiperbolik kotanjantı.
Açıklamalar
Hiperbolik kotanjant, sıradan (dairesel) kotanjantın analog değeridir.
Sayının mutlak değerinin 2^27’den az olması gerekir ve bu sayı sıfıra eşit olamaz.
Sayı bu kısıtlamanın dışındaysa bir hata döndürülür
Sayı, sayısal olmayan bir değere eşitse bir hata döndürülür.
Aşağıdaki denklem kullanılır:
Örnek
Aşağıdaki DAX işlevi
EVALUATE { COTH(2) }
Şunu döndürür:
[ DE ĞER]
1.03731472072755
COUNT
8.05.2020 • 2 minutes to read
COUNT işlevi, sütundaki boş olmayan değer içeren hücrelerin sayısını belirler.
Sözdizimi
COUNT(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
Bu işlevin izin verilen tek bağımsız değişkeni bir sütundur. COUNT işlevi, aşağıdaki değer türlerini içeren satırları
sayar:
Sayılar
Tarihler
Dizeler
İşlev sayacak satır bulamadığında boş değer döndürür.
Örnek
Aşağıdaki örnek, ShipDate sütunundaki değerlerin sayısını belirleme yöntemini göstermektedir.
=COUNT([ShipDate])
Mantıksal değer veya metin sayımı için COUNTA veya COUNTAX işlevlerini kullanın.
Ayrıca bkz.
COUNTA işlevi (DAX)
COUNTAX işlevi (DAX)
COUNTX işlevi (DAX)
İstatistiksel işlevler (DAX)
COUNTA
8.05.2020 • 2 minutes to read
Söz dizimi
COUNTA(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
İşlev sayılacak satır bulamazsa boş sonuç döndürür.
Örnek
Aşağıdaki örnek, Reseller tablosunda telefon numaralarının depolandığı bir sütun değerine sahip olan tüm
satırları döndürür. Tablo adı boşluk içermediğinden tırnak işaretleri isteğe bağlıdır.
=COUNTA('Reseller'[Phone])
Ayrıca bkz.
COUNT işlevi (DAX)
COUNTAX işlevi (DAX)
COUNTX işlevi (DAX)
İstatistiksel işlevler (DAX)
COUNTAX
8.05.2020 • 2 minutes to read
COUNTAX işlevi, bir ifadenin sonucunu tablo üzerinde değerlendirirken boş olmayan sonuçları sayar. Başka bir
deyişle COUNTA işlevi gibi çalışır ancak bir tablodaki satırları yinelemek ve belirtilen ifadelerin boş olmayan sonuç
döndürdüğü satırları saymak için kullanılır.
Sözdizimi
COUNTAX(<table>,<expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
COUNTA işlevinde olduğu gibi COUNTAX işlevi de diğer ifadeler dahil olmak üzere herhangi bir türde bilgi içeren
hücreleri sayar.
Örneğin bir sütunda boş dize sonucunu veren bir ifade varsa, COUNTAX işlevi bu sonucu boş olmayan değer
olarak değerlendirir. COUNTAX işlevi genellikle boş hücreleri saymaz ancak bu durumda içinde bir formül
bulunduğu için hücre sayıma dahil edilir.
İşlev toplanacak satır bulamadığında işlev boş değer döndürür.
Örnek
Aşağıdaki örnek, Reseller tablosunun [Status] = Active ile filtrelenmesi sonucu elde edilen tabloyu kullanarak
Phone sütunundaki boş olmayan satırları sayar.
=COUNTAX(FILTER('Reseller',[Status]="Active"),[Phone])
Ayrıca bkz.
COUNT işlevi (DAX)
COUNTA işlevi (DAX)
COUNTX işlevi (DAX)
İstatistiksel işlevler (DAX)
COUNTBLANK
8.05.2020 • 2 minutes to read
Söz dizimi
COUNTBLANK(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı. Koşulu karşılayan satır bulunmazsa boşluklar döndürülür.
Açıklamalar
Bu işlevin izin verilen tek bağımsız değişkeni bir sütundur. Herhangi bir türde veri içeren sütunları kullanabilirsiniz
ancak yalnızca boş hücreler sayılır. Sıfır (0), sayısal bir değer olarak kabul edildiğinden sıfır değerine sahip olan
hücreler sayılmaz.
Toplanacak satır olmadığında işlev boş değer döndürür. Ancak satırlar olmasına rağmen hiçbiri belirtilen ölçütlere
uygun değilse işlev 0 döndürür. Microsoft Excel de koşulları karşılayan satır bulunamadığında sıfır döndürür.
Başka bir deyişle COUNTBLANK işlevi boş hücre bulamadığında sonuç sıfır olacak ancak denetlenecek satır
olmadığında boş sonuç döndürecektir.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnekte Reseller tablosunun BankName alanında boş değerler olan satırlarının nasıl sayılacağı
gösterilmektedir.
=COUNTBLANK(Reseller[BankName])
Mantıksal değer veya metin sayımı için COUNTA veya COUNTAX işlevlerini kullanın.
Ayrıca bkz.
COUNT işlevi (DAX)
COUNTA işlevi (DAX)
COUNTAX işlevi (DAX)
COUNTX işlevi (DAX)
İstatistiksel işlevler (DAX)
COUNTROWS
8.05.2020 • 2 minutes to read
COUNTROWS işlevi, belirtilen tablodaki veya bir ifade tarafından tanımlanan bir tablodaki satırları sayar.
Söz dizimi
COUNTROWS(<table>)
Parametreler
T ERIM TA N IM
tablo Sayılacak satırları içeren tablonun adı veya tablo döndüren bir
ifade.
Döndürülen değer
Bir tamsayı.
Açıklamalar
Bu işlev, bir temel tablodaki satır sayısını saymak için kullanılabilir. Ancak bir tablonun filtrelenmesi sonucunda
elde edilen veya bir tabloya bağlam uygulayan satır sayısını saymak için daha fazla kullanılır.
Toplanacak satır olmadığında işlev boş değer döndürür. Ancak satırlar olmasına rağmen hiçbiri belirtilen ölçütlere
uygun değilse işlev 0 döndürür. Microsoft Excel de koşulları karşılayan satır bulunamadığında sıfır döndürür.
Örnek
Aşağıdaki örnek, Orders tablosundaki satırların sayısını belirleme yöntemini göstermektedir. Beklenen sonuç
52761 sayısıdır.
=COUNTROWS('Orders')
Örnek
Aşağıdaki örnekte COUNTROWS işlevinin satır bağlamında nasıl kullanılacağı gösterilmiştir. Bu senaryoda, sipariş
numarası üzerinden ilişkilendirilmiş olan iki veri kümesi vardır. Bayi tablosunda her bayi için bir satır vardır.
ResellerSales tablosunda ise her sipariş için birden fazla satır vardır ve her satır belirli bir bayinin siparişini içerir.
Tablolar arasındaki ilişki yalnızca ResellerKey sütununa dayanmaktadır.
Formül, ResellerKey değerini alır ve ardından ilgili tabloda aynı bayi kimliğine sahip olan satırları sayar. Sonuç,
CalculatedColumn1 sütununa yazılır.
=COUNTROWS(RELATEDTABLE(ResellerSales))
1 73
2 70
3 394
Ayrıca bkz.
COUNT işlevi (DAX)
COUNTA işlevi (DAX)
COUNTAX işlevi (DAX)
COUNTX işlevi (DAX)
İstatistiksel işlevler (DAX)
COUNTX
8.05.2020 • 2 minutes to read
Boş olmayan değer veya bir tablo için boş olmayan değer olarak değerlendirilen bir ifadeyi içeren satırları sayar.
Söz dizimi
COUNTX(<table>,<expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tamsayı.
Açıklamalar
COUNTX işlevi iki bağımsız değişken alır. İlk bağımsız değişken her zaman bir tablo ya da bir tablo döndüren bir
ifade olmalıdır. İkinci bağımsız değişken, COUNTX tarafından aranan sütun veya ifadedir.
COUNTX işlevi yalnızca değerleri, tarihleri veya dizeleri sayar. İşlev sayacak satır bulamadığında boş değer
döndürür.
Mantıksal değerleri saymak için COUNTAX işlevini kullanın.
Örnek 1
Aşağıdaki formül, Product tablosunda liste fiyatına sahip olan tüm satırların sayısını döndürür.
=COUNTX(Product,[ListPrice])
Örnek 2
Aşağıdaki formül, COUNTX işlevinin ilk bağımsız değişkeni olarak filtrelenmiş bir tablo geçirmeyi göstermektedir.
Formül, bir filtre ifadesi kullanarak Product tablosundaki ProductSubCategory = "Caps" koşulunu karşılayan
satırları alıp sonuç tablosundaki liste fiyatına sahip olan satırları sayar. FILTER ifadesi, Products tablosuna
uygulanır ancak aradığınız değeri ProductSubCategory ilgili tablosunda kullanır.
=COUNTX(FILTER(Product,RELATED(ProductSubcategory[EnglishProductSubcategoryName])="Caps", Product[ListPrice])
Ayrıca bkz.
COUNT işlevi (DAX)
COUNTA işlevi (DAX)
COUNTAX işlevi (DAX)
İstatistiksel işlevler (DAX)
CROSSJOIN
8.05.2020 • 2 minutes to read
Bağımsız değişkenlerdeki tüm tablolarda yer alan tüm satırların kartezyen çarpımını içeren bir tablo döndürür. Yeni
tablodaki sütunlar, tüm bağımsız değişken tablolarındaki sütunlardır.
Sözdizimi
CROSSJOIN(<table>, <table>[, <table>]…)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bağımsız değişkenlerdeki tüm tablolarda yer alan tüm satırların kartezyen çarpımını içeren bir tablo.
Açıklamalar
tablo bağımsız değişkenlerinden alınan sütun adlarının tüm tablolarda farklı olması gerekir, aksi takdirde bir
hata döndürülür.
CROSSJOIN() tarafından döndürülen toplam satır sayısı, bağımsız değişkenlerdeki tüm tablolardaki satır
sayısının çarpımına eşittir. Ayrıca, sonuç tablosundaki sütunların toplam sayısı, tüm tablolardaki sütun
sayısının toplamıdır. Örneğin TableA içinde rA satır ve cA sütun varsa ve TableB içinde rB satır ve cB sütun
varsa ve TableC içinde rC satır ve cC sütun varsa sonuçta elde edilen tabloda rA × rb × rC satır ve cA +
cB + cC sütun olur.
Örnek
Aşağıdaki örnek, iki tabloya CROSSJOIN() işlevinin uygulanması durumunda elde edilen sonuçları gösterir: Colors
ve Stationer y .
Colors tablosunda renkler ve desenler vardır:
REN K DESEN
tırnaklı kabartma
tırnaksız oyma
Yukarıdaki ifade bir tablo ifadesi beklendiğinde kullanılır ancak ifadenin sonuçları şu şekilde olur:
Sözdizimi
DISTINCTCOUNT(<column>)
Parametreler
SÜRE A Ç IK L A M A
Döndürülen değer
Sütun içindeki farklı değerlerin sayısı.
Açıklamalar
Bu işlevin izin verilen tek bağımsız değişkeni bir sütundur. Herhangi bir türde veri içeren sütunlar kullanabilirsiniz.
İşlev sayılacak satır bulamadığında BLANK döndürür, aksi takdirde farklı değerlerin sayısını döndürür.
DISTINCTCOUNT işlevi BLANK değerini içerir. BLANK değerini atlamak için DISTINCTCOUNTNOBLANK işlevini
kullanın.
Örnek
Aşağıdaki örnek, ResellerSales_USD[SalesOrderNumber] sütunundaki benzersiz satış siparişlerinin sayısını
hesaplamayı göstermektedir.
=DISTINCTCOUNT(ResellerSales_USD[SalesOrderNumber])
```dax
Using the above measure in a table with calendar year in the side and product category on top gives the
following results:
In the above example, note that the rows Grand Total numbers do not add up, this happens because the same
order might contain line items, in the same order, from different product categories.
## See also
[COUNT function (DAX)](count-function-dax.md)
[COUNTA function (DAX)](counta-function-dax.md)
[COUNTAX function (DAX)](countax-function-dax.md)
[COUNTX function (DAX)](countx-function-dax.md)
[Statistical functions (DAX)](statistical-functions-dax.md)
EXPON.DIST
8.05.2020 • 2 minutes to read
Üstel dağılımı döndürür. ATM'nin para vermesi için geçen süre gibi olaylar arasındaki süreyi modellemek için
EXPON.DIST öğesini kullanın. Örnek olarak, bu işlemin en fazla 1 dakika sürme olasılığını belirlemek için
EXPON.DIST öğesini kullanabilirsiniz.
Sözdizimi
EXPON.DIST(x,lambda,cumulative)
Parametreler
T ERIM TA N IM
Döndürülen değer
Üstel dağılımı döndürür.
Açıklamalar
x veya lambda, sayısal olmayan bir değerse EXPON.DIST, #VALUE! hata değerini döndürür.
x veya lambda bir tamsayı değilse yuvarlanır.
x < 0 ise EXPON.DIST, #NUM! hata değerini döndürür.
lambda ≤ 0 ise EXPON.DIST, #NUM! hata değerini döndürür.
Olasılık yoğunluğu işlevinin denklemi şöyledir:
tablo1 içindeki her satır ile tablo2 tablosunu table1 içindeki geçerli satır bağlamında değerlendirmenin sonucunda
elde edilen değerin kartezyen çarpımını içeren bir tablo döndürür.
Sözdizimi
GENERATE(<table1>, <table2>)
Parametreler
T ERIM TA N IM
Döndürülen değer
tablo1 içindeki her satır ile tablo2 tablosunu table1 içindeki geçerli satır bağlamında değerlendirmenin sonucunda
elde edilen değerin kartezyen çarpımını içeren bir tablo.
Açıklamalar
tablo1 içindeki geçerli satır için tablo2 değerlendirmesinin boş bir tablo döndürmesi durumunda tablo1
içindeki geçerli satır sonuçlara dahil edilmez. Bu durum, tablo1 içindeki geçerli satırın sonuçlara dahil
edildiği ve tablo2 değerlerine karşılık gelen sütunların o satır için boş değere sahip olduğu GENERATEALL()
işlevinden farklıdır.
tablo1 ve tablo2 içindeki tüm sütun adları farklı olmalıdır, aksi takdirde bir hata döndürülür.
Örnek
Aşağıdaki örnekte kullanıcı, aşağıdaki tabloda olduğu gibi Bayi kanalı için Bölge ve Ürün Kategorisi ölçütlerine göre
özetlenmiş bir satış tablosu oluşturmak istemektedir:
GENERATE(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
Kuzey Amerika
Avrupa
Pasifik
NA
Bisikletler $ 63.084.675,04
Bileşenler $ 11.205.837,96
Kıyafet $ 1.669.943,27
P RO DUC TC AT EGO RY [ P RO DUC TC AT EGO RY N A M E] [ B AY I SAT I Ş L A RI]
Aksesuarlar $ 534.301,99
3. Ancak yukarıdaki tabloyu alıp bölge grupları tablosunun her bir satırının bağlamı çerçevesinde
değerlendirirseniz her bölge için farklı sonuçlar elde etmiş olursunuz.
GENERATEALL
8.05.2020 • 3 minutes to read
tablo1 içindeki her satır ile tablo2 tablosunu table1 içindeki geçerli satır bağlamında değerlendirmenin sonucunda
elde edilen değerin kartezyen çarpımını içeren bir tablo döndürür.
Söz dizimi
GENERATEALL(<table1>, <table2>)
Parametreler
T ERIM TA N IM
Döndürülen değer
tablo1 içindeki her satır ile tablo2 tablosunu table1 içindeki geçerli satır bağlamında değerlendirmenin sonucunda
elde edilen değerin kartezyen çarpımını içeren bir tablo.
Açıklamalar
tablo1 içindeki geçerli satır için tablo2 değerlendirmesinin boş bir tablo döndürmesi durumunda tablo1
içindeki geçerli satır sonuçlara dahil edilir ve tablo2 için olan sütunlar o satırda null değerlere sahip olur. Bu,
tablo1 içindeki geçerli satırın sonuçlara dahil edilmedi ği GENERATE() işlevinden farklıdır.
tablo1 ve tablo2 içindeki tüm sütun adları farklı olmalıdır, aksi takdirde bir hata döndürülür.
Örnek
Aşağıdaki örnekte kullanıcı, aşağıdaki tabloda olduğu gibi Bayi kanalı için Bölge ve Ürün Kategorisi ölçütlerine göre
özetlenmiş bir satış tablosu oluşturmak istemektedir:
NA Aksesuarlar
SA L EST ERRITO RY [ SA L EST ERRITO RY GRO P RO DUC TC AT EGO RY [ P RO DUC TC AT EGO
UP ] RY N A M E] [ B AY I SAT I Ş L A RI]
NA Bisikletler
NA Kıyafet
NA Bileşenler
GENERATEALL(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
1. İlk SUMMARIZE işlevi, aşağıda listelenenler gibi her satırın bir bölge grubu olduğu bir bölge grubu tablosu
oluşturur:
Kuzey Amerika
Avrupa
Pasifik
NA
2. İkinci SUMMARIZE işlevi, aşağıda gösterilenler gibi her gruba ait Bayi satışlarını içeren bir Ürün Kategorisi
grubu tablosu oluşturur:
Bisikletler $ 63.084.675,04
P RO DUC TC AT EGO RY [ P RO DUC TC AT EGO RY N A M E] [ B AY I SAT I Ş L A RI]
Bileşenler $ 11.205.837,96
Kıyafet $ 1.669.943,27
Aksesuarlar $ 534.301,99
3. Ancak yukarıdaki tabloyu alıp bölge grupları tablosunun her bir satırının bağlamı çerçevesinde
değerlendirirseniz her bölge için farklı sonuçlar elde etmiş olursunuz.
GEOMEAN
8.05.2020 • 2 minutes to read
Sözdizimi
GEOMEAN(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
Yalnızca sütundaki sayılar sayılır. Boşluklar, mantıksal değerler ve metin yok sayılır.
GEOMEAN( Tablo[Sütun] ) formülü GEOMEANX( Tablo, Tablo[Sütun] ) formülü ile eşdeğerdir.
Örnek
Aşağıdaki formül, Investment tablosunun Return sütununun geometrik ortalamasını hesaplar:
=GEOMEAN( Investment[Return] )
Ayrıca bkz.
GEOMEANX işlevi (DAX)
GEOMEANX
8.05.2020 • 2 minutes to read
Bir tablodaki her satır için değerlendirilen ifadenin geometrik ortalamasını döndürür.
Bir sütundaki sayıların geometrik ortalamasını döndürmek için GEOMEAN işlevini (DAX) kullanın.
Sözdizimi
GEOMEANX(<table>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
GEOMEANX işlevi ilk bağımsız değişken olarak bir tablo veya tablo dönüştüren bir ifade alır. İkinci bağımsız
değişken, geometrik ortalamasını hesaplamak istediğiniz sayıları içeren bir sütun veya sütun sonucu veren bir
ifadedir.
Yalnızca sütundaki sayılar sayılır. Boşluklar, mantıksal değerler ve metin yok sayılır.
Örnek
Aşağıdaki formül, Investments tablosunun ReturnPct sütununun geometrik ortalamasını hesaplar:
Ayrıca bkz.
GEOMEAN işlevi (DAX)
MAX
8.05.2020 • 2 minutes to read
Sözdizimi
MAX(<column>)
MAX(<expression1>, <expression2>)
Parametreler
T ERIM TA N IM
Açıklamalar
İki ifade karşılaştırırken boş değerler 0 olarak kabul edilir. Başka bir deyişle, Max(1, Blank() ) formülü 1 değerini,
Max( -1, Blank() ) ise 0 değerini döndürür. İki bağımsız değişken de boşsa, MAX boş değer döndürür. İki ifadeden
biri izin verilmeyen bir değer döndürürse, MAX bir hata döndürür.
TRUE/FALSE değerleri desteklenmez. TRUE/FALSE değerlerinden oluşan bir sütunu değerlendirmek isterseniz
MAXA işlevini kullanın.
Örnek 1
Aşağıdaki örnek, InternetSales tablosunun ExtendedAmount sütununda bulunan en büyük değeri döndürür.
=MAX(InternetSales[ExtendedAmount])
Örnek 2
Aşağıdaki örnek, iki ifadenin sonucu arasındaki en büyük değeri döndürür.
=Max([TotalSales], [TotalPurchases])
Ayrıca bkz.
MAXA işlevi (DAX)
MAXX işlevi (DAX)
İstatistiksel işlevler (DAX)
MAXA
8.05.2020 • 2 minutes to read
Sözdizimi
MAXA(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
En büyük değer.
Açıklamalar
MAXA işlevi bağımsız değişken olarak bir sütun alır ve aşağıdaki değer türleri arasındaki en büyük değeri bulur:
Sayılar
Tarihler
TRUE ve FALSE gibi mantıksal değerler. TRUE sonucunu veren satırlar 1, FALSE sonucunu veren satırlar ise 0
(sıfır) sayılır.
Boş hücreler yoksayılır. Sütunda kullanılabilecek değer yoksa MAXA işlevi 0 (sıfır) döndürür.
Metin değerlerini karşılaştırmak istiyorsanız MAX işlevini kullanın.
Örnek 1
Aşağıdaki örnek ResellerMargin adına sahip olan ve liste fiyatı ile bayi fiyatı arasındaki farkı hesaplayan
hesaplanmış sütundaki en büyük değeri döndürür.
=MAXA([ResellerMargin])
Örnek 2
Aşağıdaki örnek, tarih ve saat içeren bir sütundaki en büyük değeri döndürür. Bu formül bu sayede en güncel işlem
tarihi alır.
=MAXA([TransactionDate])
Ayrıca bkz.
MAX işlevi (DAX)
MAXX işlevi (DAX)
İstatistiksel işlevler (DAX)
MAXX
8.05.2020 • 2 minutes to read
Sözdizimi
MAXX(<table>,<expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
En büyük değer.
Açıklamalar
MAXX işlevine geçirilen tablo bağımsız değişkeni, tablo adı veya tablo sonucu veren bir ifade olabilir. İkinci
bağımsız değişken, tablonun her satırı için değerlendirilecek olan ifadeyi belirtir.
Değerlendirilecek değerler arasında yalnızca aşağıdakiler sayılır:
Sayılar
Metinler
Tarihler
Boş değerler atlanır. TRUE/FALSE değerleri desteklenmez.
Örnek 1
Aşağıdaki formülde ikinci bağımsız değişken olarak kullanılan ifade, InternetSales tablosundaki her bir sipariş için
toplam vergi ve gönderim ücretlerini hesaplar. Beklenen sonuç 375,7184 değeridir.
Örnek 2
Aşağıdaki formül, ilk olarak bir FILTER ifadesi kullanarak InternetSales tablosunu filtreleyip belirli bir satış
bölgesine ait siparişlerin bulunduğu alt kümeyi döndürür ve bu bölge [SalesTerritory] = 5 ile tanımlanır. Daha
sonra MAXX işlevi ikinci bağımsız değişken olarak kullanılan ifadeyi filtrelenmiş olan tablonun her bir satırı için
değerlendirir ve yalnızca bu siparişler için en yüksek vergi ve gönderim tutarını döndürür. Beklenen sonuç
250,3724 değeridir.
=MAXX(FILTER(InternetSales,[SalesTerritoryCode]="5"), InternetSales[TaxAmt]+ InternetSales[Freight])
Ayrıca bkz.
MAX işlevi (DAX)
MAXA işlevi (DAX)
İstatistiksel işlevler (DAX)
MEDIAN
8.05.2020 • 2 minutes to read
Sözdizimi
MEDIAN(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
Yalnızca sütundaki sayılar sayılır. Boşluklar, mantıksal değerler ve metin yok sayılır.
MEDIAN( Tablo[Sütun] ) formülü MEDIANX( Tablo, Tablo[Sütun] ) formülü ile eşdeğerdir.
Örnek
Aşağıdaki formül, Customers adlı bir tablonun Age sütununun ortanca değerini hesaplar:
=MEDIAN( Customers[Age] )
Ayrıca bkz.
MEDIANX işlevi (DAX)
MEDIANX
8.05.2020 • 2 minutes to read
Bir tablodaki her satır için değerlendirilen ifadenin ortanca değerini döndürür.
Sütundaki sayıların ortanca değerini döndürmek için MEDIAN işlevini (Dax) kullanın.
Sözdizimi
MEDIANX(<table>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık sayı.
Açıklamalar
MEDIANX işlevi ilk bağımsız değişken olarak bir tablo veya tablo dönüştüren bir ifade alır. İkinci bağımsız
değişken, ortanca değerini hesaplamak istediğiniz sayıları içeren bir sütun veya sütun sonucu veren bir ifadedir.
Yalnızca sütundaki sayılar sayılır.
Mantıksal değerler ve metin yoksayılır.
MEDIANX boşlukları yoksaymaz ancak MEDIAN boşlukları yoksayar.
Örnek
Aşağıdaki formülde ABD'de yaşayan müşterilerin yaşının ortanca değeri hesaplanmaktadır.
Ayrıca bkz.
MEDIAN işlevi (DAX)
MIN
8.05.2020 • 2 minutes to read
Söz dizimi
MIN(<column>)
MIN(<expression1>, <expression2>)
Parametreler
T ERIM TA N IM
Döndürülen değer
En küçük değer.
Açıklamalar
MIN işlevi bağımsız değişken olarak bir sütun veya iki ifade alır ve en küçük değeri döndürür. Sütunlardaki
aşağıdaki değer türleri sayılır:
Sayılar
Metinler
Tarihler
Boşluklar
İfadeler karşılaştırılırken boş değerler 0 olarak kabul edilir. Başka bir deyişle, Min(1, Blank() ) formülü 0 değerini,
Min( -1, Blank() ) ise -1 değerini döndürür. İki bağımsız değişken de boşsa, MIN boş değer döndürür. İki ifadeden
biri izin verilmeyen bir değer döndürürse, MIN bir hata döndürür.
TRUE/FALSE değerleri desteklenmez. TRUE/FALSE değerlerinden oluşan bir sütunu değerlendirmek isterseniz
MINA işlevini kullanın.
Örnek 1
Aşağıdaki örnek, ResellerMargin hesaplanmış sütunundaki en küçük değeri döndürür.
=MIN([ResellerMargin])
Örnek 2
Aşağıdaki örnek, tarih ve saat içeren TransactionDate sütunundaki en küçük değeri döndürür. Bu formül bu sayede
en erken tarihi döndürür.
=MIN([TransactionDate])
Örnek 3
Aşağıdaki örnek, iki skaler ifadenin sonucundan en küçük değeri döndürür.
=Min([TotalSales], [TotalPurchases])
Ayrıca bkz.
MINA işlevi (DAX)
MINX işlevi (DAX)
İstatistiksel işlevler (DAX)
MINA
8.05.2020 • 2 minutes to read
Sözdizimi
MINA(<column>)
Parametreler
T ERIM TA N IM
Döndürülen değer
En küçük değer.
Açıklamalar
MINA işlevi, bağımsız değişken olarak sayı içeren bir sütun alır ve en küçük değeri şu şekilde belirler:
Sütunda değer yoksa MINA işlevi 0 (sıfır) döndürür.
Sütundaki TRUE ve FALSE gibi mantıksal değerlere dönüşen satırlar TRUE için 1, FALSE için 0 (sıfır) olarak
kabul edilir.
Boş hücreler yoksayılır.
Metin değerlerini karşılaştırmak istiyorsanız MIN işlevini kullanın.
Örnek 1
Aşağıdaki ifade, InternetSales tablosundaki minimum navlun ücretini döndürür.
=MINA(InternetSales[Freight])
Örnek 2
Aşağıdaki ifade, PostalCode sütunundaki en küçük değeri döndürür. Sütunun veri türü metin olduğundan işlev
değer bulamaz ve formül sıfır (0) değerini döndürür.
=MINA([PostalCode])
Ayrıca bkz.
MIN işlevi (DAX)
MINX işlevi (DAX)
İstatistiksel işlevler (DAX)
MINX
8.05.2020 • 2 minutes to read
Bir ifadenin, tablodaki her satır için hesaplanması sonucunda elde edilen en küçük değeri döndürür.
Sözdizimi
MINX(<table>, < expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
En küçük değer.
Açıklamalar
MINX işlevi ilk bağımsız değişken olarak bir tablo veya tablo dönüştüren bir ifade alır. İkinci bağımsız değişken,
tablodaki her satır için değerlendirilen ifadeyi içerir.
Boş değerler atlanır. TRUE/FALSE değerleri desteklenmez.
Örnek 1
Aşağıdaki örnek InternetSales tablosunu filtreler ve yalnızca belirli bir satış bölgesine ait olan satırları döndürür.
Formül daha sonra Freight sütunundaki minimum değeri bulur.
Örnek 2
Aşağıdaki örnek, önceki örnekte olduğu gibi aynı filtrelenmiş tabloyu kullanır ancak işlev, filtrelenmiş tablodaki her
satır için yalnızca sütundaki değerleri aramak yerine Freight ve TaxAmt sütunlarının toplamını hesaplar ve bu
hesaplamanın sonucundaki en küçük değeri döndürür.
İlk örnekte sütunların tam adları kullanılmamıştır. İkinci örnekte tam sütun adları kullanılmıştır.
Ayrıca bkz.
MIN işlevi (DAX)
MINA işlevi (DAX)
İstatistiksel işlevler (DAX)
NORM.DIST
8.05.2020 • 2 minutes to read
Söz dizimi
NORM.DIST(X, Mean, Standard_dev, Cumulative)
Parametreler
T ERIM TA N IM
Döndürülen değer
Belirtilen ortalama ve standart sapma için normal dağıtımı.
Örnek
EVALUATE { NORM.DIST(42, 40, 1.5, TRUE) }
Şunu döndürür:
[ DE ĞER]
0,908788780274132
Ayrıca bkz.
NORM.S.DIST işlevi
NORM.INV işlevi
NORM.S.INV
NORM.INV
8.05.2020 • 2 minutes to read
Söz dizimi
NORM.INV(Probability, Mean, Standard_dev)
Parametreler
T ERIM TA N IM
Döndürülen değer
Belirtilen ortalama ve standart sapma için normal birikmeli dağıtımın tersini döndürür.
Örnek
EVALUATE { NORM.INV(0.908789, 40, 1.5) }
Şunu döndürür:
[ DE ĞER]
42,00000200956628780274132
Ayrıca bkz.
NORM.S.INV
NORM.S.DIST işlevi
NORM.DIST işlevi
NORM.S.DIST
8.05.2020 • 2 minutes to read
Söz dizimi
NORM.S.DIST(Z, Cumulative)
Parametreler
T ERIM TA N IM
Döndürülen değer
Standart normal dağıtım (ortalaması sıfır ve standart sapması birdir).
Örnek
EVALUATE { NORM.S.DIST(1.333333, TRUE) }
Şunu döndürür:
[ DE ĞER]
0,908788725604095
Ayrıca bkz.
NORM.INV işlevi
NORM.DIST işlevi
NORM.S.INV
NORM.S.INV
8.05.2020 • 2 minutes to read
Standart normal kümülatif dağıtımın tersini döndürür. Dağıtımın ortalaması sıfır ve standart sapması birdir.
Söz dizimi
NORM.S.INV(Probability)
Parametreler
T ERIM TA N IM
Döndürülen değer
Standart normal kümülatif dağıtımın tersi. Dağıtımın ortalaması sıfır ve standart sapması birdir.
Örnek
EVALUATE { NORM.S.INV(0.908789) }
Şunu döndürür:
[ DE ĞER]
1,33333467304411
Ayrıca bkz.
NORM.INV
NORM.S.DIST işlevi
NORM.DIST işlevi
PERCENTILE.EXC
8.05.2020 • 2 minutes to read
Bir aralıktaki değerlerin k-th yüzdebirlik değerini döndürür. Burada k, 0 ile 1 arasındadır ve bu iki değer hariçtir.
Bir tablodaki her satır için değerlendirilen ifadenin yüzdebirlik değerini döndürmek isterseniz PERCENTILEX.EXC
işlevini (DAX) kullanın.
Sözdizimi
PERCENTILE.EXC(<column>, <k>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir aralıktaki değerlerin k-th yüzdebirlik değeri. Burada k, 0 ile 1 arasındadır ve bu iki değer hariçtir.
Açıklamalar
Sütun boşsa BLANK() döndürülür.
k değeri sıfır veya boşsa 1/(n+1) yüzdebirlik derecesi en küçük değeri döndürür. Sıfır ise, aralık dışında olur ve bir
hata döndürülür.
k sayısal olmayan bir değerse veya 0 ile 1 aralığının dışındaysa bir hata döndürülür.
k değeri 1/(n + 1) katı değilse, PERCENTILE.EXC k-th yüzdebirlik değeri belirlemek için ilişkilendirme gerçekleştirir.
PERCENTILE.EXC, belirtilen yüzdebirlik değeri dizideki iki değer arasında olduğunda ilişkilendirme gerçekleştirir.
Belirtilen k yüzdebirlik değeri için ilişkilendirme gerçekleştirilemezse bir hata döndürülür.
Ayrıca bkz.
PERCENTILEX.EXC işlevi (DAX)
PERCENTILE.INC
8.05.2020 • 2 minutes to read
Bir aralıktaki değerlerin k-th yüzdebirlik değerini döndürür. Burada k, 0 ile 1 arasındadır ve bu iki değer dahildir.
Bir tablodaki her satır için değerlendirilen ifadenin yüzdebirlik değerini döndürmek isterseniz PERCENTILEX.INC
işlevini (DAX) kullanın.
Söz dizimi
PERCENTILE.INC(<column>, <k>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir aralıktaki değerlerin k-th yüzdebirlik değeri. Burada k, 0 ile 1 arasındadır ve bu iki değer dahildir.
Açıklamalar
Sütun boşsa BLANK() döndürülür.
k değeri sıfır veya boşsa 1/(n+1) yüzdebirlik derecesi en küçük değeri döndürür. Sıfır ise, aralık dışında olur ve bir
hata döndürülür.
k sayısal olmayan bir değerse veya 0 ile 1 aralığının dışındaysa bir hata döndürülür.
k değeri 1/(n + 1) katı değilse, PERCENTILE.INC k-th yüzdebirlik değeri belirlemek için ilişkilendirme gerçekleştirir.
PERCENTILE.INC, belirtilen yüzdebirlik değeri dizideki iki değer arasında olduğunda ilişkilendirme gerçekleştirir.
Belirtilen k yüzdebirlik değeri için ilişkilendirme gerçekleştirilemezse bir hata döndürülür.
Ayrıca bkz.
PERCENTILEX.INC işlevi (DAX)
PERCENTILEX.EXC
8.05.2020 • 2 minutes to read
Bir tablodaki her satır için değerlendirilen ifadenin yüzdebirlik değerini döndürür.
Bir sütundaki sayıların yüzdebirlik değerini döndürmek için PERCENTILE.EXC işlevini (DAX) kullanın.
Sözdizimi
PERCENTILEX.EXC(<table>, <expression>, k)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tablodaki her satır için değerlendirilen ifadenin yüzdebirlik değeri.
Açıklamalar
k değeri sıfır veya boşsa 1/(n+1) yüzdebirlik derecesi en küçük değeri döndürür. Sıfır ise, aralık dışında olur ve bir
hata döndürülür.
k sayısal olmayan bir değerse veya 0 ile 1 aralığının dışındaysa bir hata döndürülür.
k değeri 1/(n + 1) katı değilse, PERCENTILEX.EXC k-th yüzdebirlik değeri belirlemek için ilişkilendirme
gerçekleştirir.
PERCENTILEX.EXC, belirtilen yüzdebirlik değeri dizideki iki değer arasında olduğunda ilişkilendirme gerçekleştirir.
Belirtilen k yüzdebirlik değeri için ilişkilendirme gerçekleştirilemezse bir hata döndürülür.
Ayrıca bkz.
PERCENTILE.EXC işlevi (DAX)
PERCENTILEX.INC
12.05.2020 • 2 minutes to read
Bir tablodaki her satır için değerlendirilen ifadenin yüzdebirlik değerini döndürür.
Bir sütundaki sayıların yüzdebirlik değerini döndürmek için PERCENTILE.INC işlevini (DAX) kullanın.
Sözdizimi
PERCENTILEX.INC(<table>, <expression>;, k)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tablodaki her satır için değerlendirilen ifadenin yüzdebirlik değeri.
Açıklamalar
k değeri sıfır veya boşsa 1/(n-1) yüzdebirlik derecesi en küçük değeri döndürür. Sıfır ise, aralık dışında olur ve bir
hata döndürülür.
k sayısal olmayan bir değerse veya 0 ile 1 aralığının dışındaysa bir hata döndürülür.
k değeri 1/(n - 1) katı değilse, PERCENTILEX.EXC k-th yüzdebirlik değeri belirlemek için ilişkilendirme gerçekleştirir.
PERCENTILEX.INC, belirtilen yüzdebirlik değeri dizideki iki değer arasında olduğunda ilişkilendirme gerçekleştirir.
Belirtilen k yüzdebirlik değeri için ilişkilendirme gerçekleştirilemezse bir hata döndürülür.
Ayrıca bkz.
PERCENTILE.INC işlevi (DAX)
PERMUT
8.05.2020 • 2 minutes to read
Sayı nesnelerinden seçilebilen belirli bir nesne sayısı için permütasyon sayısını döndürür. Permütasyon, dahili
sıralamanın önemli olduğu nesne veya olay kümesi ya da alt kümesidir. Permütasyonlar, dahili sıralamanın önemli
olmadığı kombinasyonlardan farklıdır. Kura türünde olasılık hesaplamaları yaparken bu işlevi kullanın.
Söz dizimi
PERMUT(number, number_chosen)
Parametreler
T ERIM TA N IM
Döndürülen değer
Sayı nesnelerinden seçilebilen belirli bir nesne sayısı için permütasyon sayısını döndürür.
Açıklamalar
İki bağımsız değişken de tamsayı haline getirilir.
sayı veya number_chosen sayısal değer değilse PERMUT, #VALUE! hata değerini döndürür.
Sayı ≤ 0 ise veya number_chosen < 0 ise PERMUT, #NUM! hata değerini döndürür.
Sayı < number_chosen ise PERMUT, #NUM! hata değerini döndürür.
Permütasyon sayısı denklemi:
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Poisson dağılımını döndürür. Poisson dağılımının ortak uygulaması, 1 dakikada ücretli geçiş gişesine gelen araba
sayısı gibi, belirli bir süre içindeki olayların sayısını öngörmektir.
Söz dizimi
POISSON.DIST(x,mean,cumulative)
Parametreler
T ERIM TA N IM
Döndürülen değer
Poisson dağılımını döndürür.
Açıklamalar
x bir tamsayı değilse yuvarlanır.
x veya ortalama, sayısal olmayan bir değerse POISSON.DIST, #VALUE! hata değerini döndürür.
x < 0 ise POISSON.DIST, #NUM! hata değerini döndürür.
Ortalama < 0 ise POISSON.DIST, #NUM! hata değerini döndürür.
POISSON.DIST aşağıda gösterilen şekilde hesaplanır.
Kümülatif = FALSE için:
Sözdizimi
RANK.EQ(<value>, <columnName>[, <order>])
Parametreler
değer
Sıralaması bulunacak tek bir skaler değer döndüren herhangi bir DAX ifadesi. İfade, işlev değerlendirilmeden önce
bir kez değerlendirilir ve değeri bağımsız değişken listesine geçirilir.
columnName
Sıralamaların belirleneceği var olan sütunun adı. İfade veya şu işlevler kullanılarak oluşturulmuş bir sütun olamaz:
ADDCOLUMNS, ROW veya SUMMARIZE.
sırala
(İsteğe bağlı) sayı sıralamasını belirten bir değer: düşükten yükseğe veya yüksekten düşüğe:
Döndürülen değer
değerin columnName içindeki sayılar arasındaki sıralamasını belirten bir sayı.
Özel durumlar
Açıklamalar
columnName, şu işlevler kullanılarak oluşturulan herhangi bir sütuna başvuramaz: ADDCOLUMNS, ROW
veya SUMMARIZE.I
değer, columnName içinde yoksa veya boş bir değerse RANK.EQ işlevi boş bir değer döndürür.
Yinelenen değer örnekleri aynı sıralama değerini alır. Atanan bir sonraki sıralama değeri, yinelenen
değerlerin sayısına bir eklenerek belirlenir. Örneğin 11 sıralaması ile bağlı beş (5) değer varsa bir sonraki
değere 16 (11 + 5) sıralaması verilir.
Örnek
Aşağıdaki örnek, InternetSales_USD tablosunun SalesAmount_USD sütunundaki değerleri aynı sütundaki tüm
sayılara göre sıralar.
=RANK.EQ(InternetSales_USD[SalesAmount_USD], InternetSales_USD[SalesAmount_USD])
Örnek
Aşağıdaki örnek, bir değer alt kümesini belirli bir örneğe göre sıralar. Yerel öğrencilerden ve belirli bir ulusal testteki
performanslarından oluşan bir tabloya sahip olduğunuzu ve aynı zamanda ulusal testteki tüm sonuç kümesini de
elinizde bulundurduğunuzu düşünün. Aşağıdaki hesaplanmış sütun, yerel öğrencilerin her birinin ulusal
sıralamasını verecektir.
=RANK.EQ(Students[Test_Score], NationalScores[Test_Score])
RANKX
8.05.2020 • 3 minutes to read
tablo bağımsız değişkenindeki her bir satır için sayı listesindeki bir sayının sıralamasını döndürür.
Sözdizimi
RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])
Parametreler
tablo
İfadenin değerlendirildiği bir veri tablosu döndüren herhangi bir DAX ifadesi.
ifade
Tek bir skaler değer döndüren bir DAX ifadesi. İfade, tablo içindeki her satır için değerlendirilir ve sıralama için tüm
olası değerler oluşturulur. ifade sonucu BLANK olduğunda gerçekleştirilen işlev davranışını anlamak için
açıklamalar bölümüne bakın.
değer
(İsteğe bağlı) Sıralaması bulunacak tek bir skaler değer döndüren herhangi bir DAX ifadesi. İfade içinde değer
bulunmadığında gerçekleştirilen işlev davranışını anlamak için açıklamalar bölümüne bakın.
değer parametresi atlandığında bunun yerine geçerli satırdaki ifade değeri kullanılır.
sırala
(İsteğe bağlı) değer sıralamasını belirten bir değer: düşükten yükseğe veya yüksekten düşüğe:
eşdeğerler
(İsteğe bağlı) Eşdeğerler olduğunda sıralamanın nasıl belirleneceğini tanımlayan bir sabit listesi.
Döndürülen değer
değer için sıralama sayısı, ifadenin tüm olası değerlerinin tablo sayılarının tüm satırları için değerlendirmesiyle elde
edilir.
Özel durumlar
Açıklamalar
ifade veya değer BLANK döndürdüğünde bir sayı sonucunu veren tüm ifadeler için 0 (sıfır), tüm metin
ifadeleri için ise boş metin olarak değerlendirilir.
değer öğesinin ifadenin tüm olası değerleri arasında bulunmaması durumunda RANKX değeri geçici olarak
ifadenin değerleri arasına ekler ve RANKX işlevini yeniden değerlendirerek değerin doğru sıralamasını
belirler.
Bağımsız değişken listesine boş virgül (,) ekleyerek isteğe bağlı bağımsız değişkenleri atlayabilirsiniz.
Örneğin: RANKX(Inventory, [InventoryCost],,,"Dense")
Örnek
Aşağıdaki Products tablosundaki hesaplanmış sütun, İnternet kanalındaki her bir ürünün satış sıralamasını
hesaplar.
Her bir sütuna verilen ifadelerin sonucunda elde edilen değerleri içeren tek bir satıra sahip olan bir tablo döndürür.
Sözdizimi
ROW(<name>, <expression>[[,<name>, <expression>]…])
Parametreler
T ERIM TA N IM
ifade Doldurmak için kullanılan tek bir skaler değer döndüren bir
DAX ifadesi. ad.
Döndürülen değer
Tek satırlı tablo
Açıklamalar
Bağımsız değişkenlerin her zaman ad ve ifade çiftiyle belirtilmesi gerekir.
Örnek
Aşağıdaki örnek, internet ve bayi kanalları için toplam satış miktarını gösteren tek satırlı bir tablo döndürür.
Sözdizimi
SAMPLE(<n_value>, <table>, <orderBy_expression>, [<order>[, <orderBy_expression>, [<order>]]…])
Parametreler
n_değeri
Döndürülecek satır sayısı. İfadenin birden fazla değerlendirileceği (her bir satır/bağlam için) tek bir skaler değer
döndüren DAX ifadesidir. Tamsayı olmayan bir değer (veya ifade) girilirse, sonuç tamsayıya dönüştürülür.
tablo
Örnek N satırın ayıklanacağı veri tablosunu döndüren herhangi bir DAX ifadesi.
sıralama_ifadesi
(İsteğe bağlı) Sonuç değerinin tablonun her bir satırı için değerlendirildiği bir skaler DAX ifadesi.
sıra
(İsteğe bağlı) orderBy_expression değerlerinin sıralama düzenini belirten bir değer (artan veya azalan):
Döndürülen değer
tablo değerinin örnek N satırını içeren tablo veya n_değeri 0 (sıfır) veya altında ise boş bir tablo. Sıralama ölçütü
bağımsız değişkenlerinin sağlanması durumunda örnek sabit ve belirlenimci olur. İlk satırı, son satırı ve aralarındaki
eşit dağıtılmış satırları döndürür. Sıralama belirtilmemişse örnek rastgele alınır, kararlı ve belirlenimci olmaz.
Açıklamalar
n_değeri 0 (sıfır) veya daha küçükse SAMPLE işlevi boş tablo döndürür.
Örnekteki yinelenen değerleri önlemek için ikinci bağımsız değişken olarak belirtilen tablo, sıralama için
kullanılan sütuna göre gruplanmalıdır.
SELECTCOLUMNS
9.05.2020 • 2 minutes to read
Söz dizimi
SELECTCOLUMNS(<table>, <name>, <scalar_expression> [, <name>, <scalar_expression>]…)
Parametreler
T ERIM TA N IM
ifade Sütun başvurusu, tamsayı veya dize değeri gibi skaler değer
döndüren bir ifade.
Döndürülen değer
İlk bağımsız değişken ile belirtilen tablo ile aynı sayıda satır içeren bir tablo. Döndürülen tabloda her bir <ad>,
<skaler_ifade> bağımsız değişkeni çifti için bir sütun bulunur ve her ifade, belirtilen <tablo> bağımsız değişken
satırı bağlamında değerlendirilir.
Açıklamalar
SELECTCOLUMNS, ADDCOLUMNS ile aynı imzaya ve davranışa sahiptir. Tek fark, SELECTCOLUMNS işlevinin
belirtilen <tablo> ile başlamak yerine sütun eklemeden önce boş bir tablo kullanmasıdır.
Örnek
Aşağıdaki Info adlı tablo için:
ÜL K E EYA L ET SAY I TO P L A M
IND JK 20 800
IND MH 25 1000
IND WB 10 900
Şunu döndürür:
STAT EC O UN T RY
IND, JK
IND, MH
IND, WB
USA, CA
USA, WA
SIN
8.05.2020 • 2 minutes to read
Sözdizimi
SIN(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Verilen açının sinüsünü döndürür.
Açıklamalar
Bağımsız değişkeniniz derece ise PI()/180 ile çarparak veya RADIANS işlevini kullanarak radyana dönüştürün.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Söz dizimi
SINH(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir sayının hiperbolik sinüsünü döndürür.
Açıklamalar
Hiperbolik sinüs için formül:
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Sözdizimi
STDEV.S(<ColumnName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Örnek popülasyonun standart sapmasını temsil eden bir sayı.
Özel durumlar
Açıklamalar
1. STDEV.S, sütunun popülasyon örneğine başvurduğunu kabul eder. Verilerinizde popülasyonun tamamı
mevcutsa standart sapma hesabı için STDEV.P işlevini kullanın.
2. STDEV.S aşağıdaki formülü kullanır:
Ã[∑(x - x̃)²/(n-1)]
Burada x̃, örnek popülasyonun ortalama x değeridir
n ise popülasyon boyutudur
3. columnName içindeki boş satırlar filtrelenir ve hesaplamalara dahil edilmez.
4. columnName içindeki boş olmayan sütun sayısı 2'nin altındaysa bir hata döndürülür.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek, InternetSales_USD tablosunun örnek popülasyon içerdiği durumlarda SalesAmount_USD
sütunundan standart sapma hesaplaması yapan bir ölçüye ait formülü göstermektedir.
=STDEV.S(InternetSales_USD[SalesAmount_USD])
STDEV.P
8.05.2020 • 2 minutes to read
Sözdizimi
STDEV.P(<ColumnName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Popülasyonun tamamının standart sapmasını gösteren bir sayı.
Özel durumlar
Açıklamalar
1. STDEV.P sütunun, popülasyonun tamamına başvurduğunu kabul eder. Verilerinizde popülasyon örneği
mevcutsa standart sapma hesabı için STDEV.S işlevini kullanın.
2. STDEV.P aşağıdaki formülü kullanır:
Ã[∑(x - x̃)²/n]
Burada x̃, popülasyon genelinde ortalama x değeridir
n ise popülasyon boyutudur
3. columnName içindeki boş satırlar filtrelenir ve hesaplamalara dahil edilmez.
4. columnName içindeki boş olmayan sütun sayısı 2'nin altındaysa bir hata döndürülür.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek, InternetSales_USD tablosunun popülasyonun tamamını içerdiği durumlarda SalesAmount_USD
sütunundan standart sapma hesaplaması yapan bir ölçüye ait formülü göstermektedir.
=STDEV.P(InternetSales_USD[SalesAmount_USD])
STDEVX.S
8.05.2020 • 2 minutes to read
Söz dizimi
STDEVX.S(<table>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Örnek popülasyonun standart sapmasını belirten sayı.
Özel Durumlar
Açıklamalar
1. STDEVX.S, tablonun her satırı için ifadeyi değerlendirir ve tablonun popülasyon örneğine başvurduğunu
kabul ederek ifadenin standart sapmasını döndürür. Tabloda popülasyonun tamamı mevcutsa standart
sapma hesabı için STDEVX.P işlevini kullanın.
2. STDEVX.S aşağıdaki formülü kullanır:
Ã[∑(x - x̃)²/(n-1)]
Burada x̃, popülasyon genelinde ortalama x değeridir
n ise popülasyon boyutudur
3. columnName içindeki boş satırlar filtrelenir ve hesaplamalara dahil edilmez.
4. columnName içindeki boş olmayan sütun sayısı 2'nin altındaysa bir hata döndürülür.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek formül, Product tablosunda kullanıldığında örnek popülasyon için ürün fiyatının standart
sapmasını tahmin eden bir hesaplanmış sütun oluşturmaktadır.
=STDEVX.S(RELATEDTABLE(InternetSales_USD), InternetSales_USD[UnitPrice_USD] –
(InternetSales_USD[DiscountAmount_USD]/InternetSales_USD[OrderQuantity]))
STDEVX.P
9.05.2020 • 2 minutes to read
Sözdizimi
STDEVX.P(<table>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Popülasyonun tamamının standart sapmasını temsil eden bir sayı.
Açıklamalar
1. STDEVX.P tablonun her satırı için ifadeyi değerlendirir ve tablonun popülasyonun tamamına başvurduğunu
kabul ederek ifadenin standart sapmasını döndürür. tablo içindeki veriler popülasyon örneğini temsil
ediyorsa standart sapma hesabı için STDEVX.S işlevini kullanmanız gerekir.
2. STDEVX.P aşağıdaki formülü kullanır:
Ã[∑(x - x̃)²/n]
Burada x̃, popülasyon genelinde ortalama x değeridir
n ise popülasyon boyutudur
3. columnName içindeki boş satırlar filtrelenir ve hesaplamalara dahil edilmez.
4. columnName içindeki boş olmayan sütun sayısı 2'nin altındaysa bir hata döndürülür.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek formül, Product tablosunda kullanıldığında ürün fiyatının standart sapmasını hesaplayan bir
hesaplanmış sütun oluşturmaktadır.
=STDEVX.P(RELATEDTABLE(InternetSales_USD), InternetSales_USD[UnitPrice_USD] –
(InternetSales_USD[DiscountAmount_USD]/InternetSales_USD[OrderQuantity]))
SQRTPI
8.05.2020 • 2 minutes to read
Sözdizimi
SQRTPI(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
(sayı * pi) kare kökünü döndürür.
Açıklamalar
xxxxx
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Gruplar kümesinin üzerinde istenen toplamlar için bir özet tablosu döndürür.
Söz dizimi
SUMMARIZE(<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
Parametreler
T ERIM TA N IM
name Toplam veya özet sütuna verilen ad, çift tırnak içine alınmış.
Döndürülen değer
groupBy_columnName bağımsız değişkenleri için seçilen sütunlara ve ad bağımsız değişkenleri ile belirlenen
özetlenmiş sütunlara sahip olan bir tablo.
Açıklamalar
1. Ad tanımladığınız her sütunda bir ifade olması gerekir, aksi takdirde bir hata döndürülür. İlk bağımsız
değişken olan ad, sonuçlardaki sütunun adını tanımlar. İkinci bağımsız değişken olan ifade, bu sütundaki her
bir satırın değerini almak için gerçekleştirilen hesaplamayı tanımlar.
2. groupBy_columnName tablo veya tablo ile ilişkili bir tablo içinde olmalıdır.
3. Her ad çift tırnak içine alınmalıdır.
4. İşlev, seçilen satır kümesini bir veya daha fazla groupBy_columnName sütunu değerine göre özet satır
kümesine dönüştürür. Her grup için bir satır döndürülür.
Örnek
Aşağıdaki örnek, takvim yılı ve ürün kategorisi adı ile gruplanmış bayi satışlarının bir özetini döndürür. Bu sonuç
tablosu, bayi satışları için yıla ve ürün kategorisine göre analiz yapmanızı sağlar.
SUMMARIZE(ResellerSales_USD
, DateTime[CalendarYear]
, ProductCategory[ProductCategoryName]
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Aşağıdaki tabloda, tablo almayı bekleyen işlevlerin alacağı verilerin önizlemesi gösterilmiştir:
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Aşağıdaki tabloda, tablo almayı bekleyen işlevlerin alacağı verilerin önizlemesi gösterilmiştir:
76494758,25 527507,9262
ROLLUPGROUP
ROLLUPGROUP(), alt toplam gruplarını hesaplamak için kullanılabilir. ROLLUPGROUP, ROLLUP yerine
kullanıldığında groupBy_columnName sütunu sonuçlarına toplu değer satırı ekleyerek aynı sonucu verir. Ancak
ROLLUPGROUP() işlevinin ROLLUP söz dizimine eklenmesi, toplu değer satırlarında kısmi alt toplam oluşmasını
önleyebilir.
Aşağıdaki örnek, her bir yılın alt toplamı olmadan tüm yılların ve kategorilerin yalnızca genel toplamını gösterir:
SUMMARIZE(ResellerSales_USD
, ROLLUP(ROLLUPGROUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName]))
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Aşağıdaki tabloda, tablo almayı bekleyen işlevlerin alacağı verilerin önizlemesi gösterilmiştir:
76494758,25 527507,9262
SUMMARIZE ve ISSUBTOTAL
Kullanıcının SUMMARIZE işlevinde, satırda ISSUBTOTAL için bağımsız değişken olarak belirtilen sütunun alt toplam
değerlerinin bulunması durumunda True, aksi takdirde False döndüren başka bir sütun eklemesini sağlar.
ISSUBTOTAL parametreleri
columnName
SUMMARIZE işlevinin tablosundaki herhangi bir sütunun adı veya ilişkili tablodaki herhangi bir sütun.
Döndürülen değer
Satır, bağımsız değişken olarak belirtilen sütunun alt toplam değerini içeriyorsa True , aksi takdirde False değeri.
Açıklamalar
ISSUBTOTAL yalnızca SUMMARIZE işlevinin bir parçası olarak ifade içinde kullanılabilir.
ISSUBTOTAL öncesinde eşleşen bir ad sütunu bulunması gerekir.
Örnek
Aşağıdaki örnek, belirtilen SUMMARIZE() işlevi çağrısındaki her bir ROLLUP() sütunu için bir ISSUBTOTAL() sütunu
oluşturur.
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
, "Is Sub Total for DateTimeCalendarYear", ISSUBTOTAL(DateTime[CalendarYear])
, "Is Sub Total for ProductCategoryName", ISSUBTOTAL(ProductCategory[ProductCategoryName])
)
Aşağıdaki tabloda, tablo almayı bekleyen işlevlerin alacağı verilerin önizlemesi gösterilmiştir:
FALSE FALSE
FALSE TRUE
Sözdizimi
T.DIST(X,Deg_freedom,Cumulative)
Parametreler
T ERIM TA N IM
Döndürülen değer
Öğrencinin sol kuyruklu t dağıtımı.
Örnek
EVALUATE { T.DIST(60, 1, TRUE) }
Şunu döndürür:
[ DE ĞER]
0,994695326367377
Ayrıca bkz.
T.DIST.2T işlevi
T.DIST.RT işlevi
T.INV işlevi
T.INV.2t işlevi
T.DIST.2T
8.05.2020 • 2 minutes to read
Sözdizimi
T.DIST.2T(X,Deg_freedom)
Parametreler
T ERIM TA N IM
Döndürülen değer
Öğrencinin iki kuyruklu t dağıtımı.
Örnek
EVALUATE { T.DIST.2T(1.959999998, 60) }
Şunu döndürür:
[ DE ĞER]
0,054644929975921
Ayrıca bkz.
T.DIST işlevi
T.DIST.RT işlevi
T.INV işlevi
T.INV.2t işlevi
T.DIST.RT
8.05.2020 • 2 minutes to read
Sözdizimi
T.DIST.RT(X,Deg_freedom)
Parametreler
T ERIM TA N IM
Döndürülen değer
Sağ kuyruklu Öğrencinin t dağıtımı.
Örnek
EVALUATE { T.DIST.RT(1.959999998, 60) }
Şunu döndürür:
[ DE ĞER]
0,0273224649879605
Ayrıca bkz.
T.DIST işlevi
T.DIST.2T işlevi
T.INV işlevi
T.INV.2t işlevi
T.INV
9.05.2020 • 2 minutes to read
Sözdizimi
T.INV(Probability,Deg_freedom)
Parametreler
T ERIM TA N IM
Döndürülen değer
Öğrencinin t dağıtımının sol kuyruklu tersi.
Örnek
EVALUATE { T.INV(0.75, 2) }
Şunu döndürür:
[ DE ĞER]
0,816496580927726
Ayrıca bkz.
T.INV.2T işlevi
T.DIST işlevi
T.DIST.2T işlevi
T.DIST.RT işlevi
T.INV.2T
8.05.2020 • 2 minutes to read
Sözdizimi
T.INV.2T(Probability,Deg_freedom)
Parametreler
T ERIM TA N IM
Döndürülen değer
Öğrencinin t dağılımının iki kuyruklu tersi.
Örnek
EVALUATE { T.INV.2T(0.546449, 60) }
Şunu döndürür:
[ VA L UE]
0,606533075825759
Ayrıca bkz.
T.INV işlevi
T.DIST işlevi
T.DIST.2T işlevi
T.DIST.RT işlevi
TAN
8.05.2020 • 2 minutes to read
Sözdizimi
TAN(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Verilen açının tanjantını döndürür.
Açıklamalar
Bağımsız değişkeniniz derece ise PI()/180 ile çarparak veya RADIANS işlevini kullanarak radyana dönüştürün.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Söz dizimi
TANH(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir sayının hiperbolik tanjantını döndürür.
Açıklamalar
Hiperbolik tanjant için formül:
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
Sözdizimi
TOPN(<n_value>, <table>, <orderBy_expression>, [<order>[, <orderBy_expression>, [<order>]]…])
Parametreler
n_değeri
Döndürülecek satır sayısı. İfadenin birden fazla değerlendirileceği (her bir satır/bağlam için) tek bir skaler değer
döndüren DAX ifadesidir.
Döndürülen satır sayısının n_değerinden büyük olabileceği durumları anlamak için açıklamalar bölümüne bakın.
Boş bir tablonun döndürülebileceği durumları anlamak için açıklamalar bölümüne bakın.
tablo
İlk N satırın ayıklanacağı veri tablosunu döndüren herhangi bir DAX ifadesi.
sıralama_ifadesi
Sonuç değerinin tabloyu sıralamak için kullanıldığı ve tablonun her bir satırı için değerlendirildiği herhangi bir DAX
ifadesi.
sırala
(İsteğe bağlı) orderBy_expression değerlerinin sıralama düzenini belirten bir değer (artan veya azalan):
Döndürülen değer
tablo değerinin ilk N satırını içeren tablo veya n_değeri 0 (sıfır) veya altında ise boş bir tablo. Satırlar belirli bir
sırada sıralanmayabilir.
Açıklamalar
Tablonun N numaralı satırında sıralama_ölçütü değerlerinde bir bağlama varsa, tüm bağlı satırlar
döndürülür. Ardından N numaralı satırda bağlama olduğunda işlev N satırdan fazlasını döndürebilir.
n_değeri 0 (sıfır) veya daha küçükse TOPN işlevi boş tablo döndürür.
TOPN işlevi, sonuçlar için herhangi bir sıralama düzeni garantisi vermez.
Örnek
Aşağıdaki örnek, en çok satan 10 ürünün satış rakamlarını içeren bir ölçü oluşturur.
Söz dizimi
VAR.S(<columnName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Örnek popülasyonun varyansı olan bir sayı.
Özel Durumlar
Açıklamalar
1. VAR.S, sütunun popülasyon örneğine başvurduğunu kabul eder. Verileriniz popülasyonun tamamını temsil
ediyorsa, varyansı hesaplamak için VAR.P kullanın.
2. VAR.S aşağıdaki formülü kullanır:
∑(x - x̃)²/(n-1)
Burada x̃, örnek popülasyonun ortalama x değeridir
n ise popülasyon boyutudur
3. columnName içindeki boş satırlar filtrelenir ve hesaplamalara dahil edilmez.
4. columnName içindeki boş olmayan sütun sayısı 2'nin altındaysa bir hata döndürülür.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek, popülasyon örneği için InternetSales_USD tablosunun SalesAmount_USD sütunundan varyans
hesabı yapan bir ölçüye ait formülü göstermektedir.
=VAR.S(InternetSales_USD[SalesAmount_USD])
VAR.P
8.05.2020 • 2 minutes to read
Söz dizimi
VAR.P(<columnName>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Popülasyonun tamamının varyansı olan bir sayı.
Açıklamalar
1. VAR.P sütunun, popülasyonun tamamına başvurduğunu kabul eder. Verileriniz popülasyonun bir örneğini
temsil ediyorsa, varyansı hesaplamak için VAR.S kullanın.
2. VAR.P aşağıdaki formülü kullanır:
∑(x - x̃)²/n
Burada x̃, popülasyon genelinde ortalama x değeridir
n ise popülasyon boyutudur
3. columnName içindeki boş satırlar filtrelenir ve hesaplamalara dahil edilmez.
4. columnName içindeki boş olmayan sütun sayısı 2'nin altındaysa bir hata döndürülür.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek, popülasyonun tamamı için InternetSales_USD tablosunun SalesAmount_USD sütunundan
varyans tahmininde bulunan bir ölçüye ait formülü göstermektedir.
=VAR.P(InternetSales_USD[SalesAmount_USD])
VARX.S
8.05.2020 • 2 minutes to read
Söz dizimi
VARX.S(<table>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Örnek popülasyonun varyansını temsil eden bir sayı.
Özel Durumlar
Açıklamalar
1. VARX.S, tablonun her satırı için ifadeyi değerlendirir ve tablonun popülasyon örneğine başvurduğunu kabul
ederek ifadenin varyansını döndürür. Tabloda popülasyonun tamamı mevcutsa varyans hesabı için VARX.P
işlevini kullanmanız gerekir.
2. VAR.S aşağıdaki formülü kullanır:
∑(x - x̃)²/(n-1)
Burada x̃, örnek popülasyonun ortalama x değeridir
n ise popülasyon boyutudur
3. columnName içindeki boş satırlar filtrelenir ve hesaplamalara dahil edilmez.
4. columnName içindeki boş olmayan sütun sayısı 2'nin altındaysa bir hata döndürülür.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek formül, Product tablosunda kullanıldığında örnek popülasyon için ürün fiyatının varyansını tahmin
eden bir hesaplanmış sütun oluşturmaktadır.
=VARX.S(InternetSales_USD, InternetSales_USD[UnitPrice_USD] –
(InternetSales_USD[DiscountAmount_USD]/InternetSales_USD[OrderQuantity]))
VARX.P
8.05.2020 • 2 minutes to read
Söz dizimi
VARX.P(<table>, <expression>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Popülasyonun tamamının varyansı olan bir sayı.
Özel Durumlar
Açıklamalar
1. VARX.P <tablonun> her satırı için <ifadeyi> değerlendirir ve <tablonun> popülasyonun tamamına
başvurduğunu kabul ederek <ifadenin> varyansını döndürür. <Tablonuz> popülasyonun bir örneğini temsil
ediyorsa, varyansı hesaplamak için VARX.S kullanın.
2. VARX.P aşağıdaki formülü kullanır:
∑(x - x̃)²/n
Burada x̃, popülasyon genelinde ortalama x değeridir
n ise popülasyon boyutudur
3. columnName içindeki boş satırlar filtrelenir ve hesaplamalara dahil edilmez.
4. columnName içindeki boş olmayan sütun sayısı 2'nin altındaysa bir hata döndürülür.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek formül, Product tablosunda kullanıldığında ürün fiyatının varyansını hesaplayan bir hesaplanmış
sütun oluşturmaktadır.
=VARX.P(InternetSales_USD, InternetSales_USD[UnitPrice_USD] –
(InternetSales_USD[DiscountAmount_USD]/InternetSales_USD[OrderQuantity]))
XIRR
8.05.2020 • 2 minutes to read
Periyodik olması gerekmeyen nakit akışları planı için dahili geri dönüş oranını döndürür.
Söz dizimi
XIRR(<table>, <values>, <dates>, [guess])
Parametreler
T ERIM TA N IM
değerler Tablonun her bir satırı için nakit akışı değerini döndüren ifade.
tarihler Tablonun her bir satırı için nakit akışı tarihini döndüren ifade.
Döndürülen değer
Verilen girişle için iç dönüş oranı. Hesaplama geçerli bir sonuç döndüremezse hata döndürülür.
Açıklamalar
Oran şu işlevi karşıladığı için değer hesaplaması yapılır:
Nakit akış değer dizisinde en az bir pozitif, bir de negatif sayı olması gerekir.
Örnek
Aşağıda CashFlows tablosunun iç dönüş oranı hesaplanmıştır:
TA RIH Ö DEM E
01.01.2014 -10000
TA RIH Ö DEM E
1/3/2014 2750
10/30/2014 4250
2/15/2015 3250
01.04.2015 2750
Periyodik olması gerekmeyen nakit akışları planı için mevcut değeri döndürür.
Sözdizimi
XNPV(<table>, <values>, <dates>, <rate>)
Parametreler
T ERIM TA N IM
değerler Tablonun her bir satırı için nakit akışı değerini döndüren ifade.
tarihler Tablonun her bir satırı için nakit akışı tarihini döndüren ifade.
oran Tablodaki her satır için nakit akışına uygulanacak olan indirim
oranı.
Döndürülen değer
Net mevcut değer.
Açıklamalar
Değer aşağıdaki toplama olarak hesaplanır:
Nakit akış değer dizisinde en az bir pozitif, bir de negatif sayı olması gerekir.
Örnek
Aşağıda CashFlows tablosunun mevcut değeri hesaplanmıştır:
TA RIH Ö DEM E
01.01.2014 -10000
TA RIH Ö DEM E
1/3/2014 2750
10/30/2014 4250
2/15/2015 3250
01.04.2015 2750
Veri Çözümleme İfadeleri (DAX), Excel'deki dize işlevleri kitaplığını temel alan metin işlevleri kümesine sahiptir
ancak bu işlevler, tablosal modellerdeki tablolar ve sütunlarla çalışacak şekilde değiştirilmiştir. Bu bölümde DAX
dilinde kullanılan metin işlevleri açıklanmaktadır.
Bu kategoride
İŞ L EV A Ç IK L A M A
CONTAINSSTRING Bir dizenin başka bir dize içerip içermediğini gösteren TRUE
veya FALSE değerini döndürür.
CONTAINSSTRINGEXACT Bir dizenin başka bir dize içerip içermediğini gösteren TRUE
veya FALSE değerini döndürür.
FIND Başka bir metin dizesinin içinde yer alan bir metin dizesinin
başlangıç konumunu döndürür.
SEARCH Soldan sağa okuyarak belirli bir karakter veya metin dizesinin
ilk bulunduğu karakter sayısını döndürür.
Sözdizimi
BLANK()
Döndürülen değer
Boş değer.
Açıklamalar
Boşluklar, null değerlerine eşit değildir. DAX, hem veritabanı null değerleri hem de Excel'deki boş değerler için boş
değer kullanır.
Bazı DAX işlevleri, boş hücreleri Microsoft Excel'den farklı bir şekilde işler. Boşluklar ve boş dizeler ("") her zaman
eşdeğer değildir ancak bazı işlemler bunları eşit kabul edebilir.
Örnek
Aşağıdaki örnek formüllerde boşluklarla nasıl çalışabileceğiniz gösterilmektedir. Formül, Bayi ve İnternet kanalları
arasındaki satış oranını hesaplar. Ancak oranı hesabı öncesinde paydada sıfır değeri olup olmadığı denetlenmelidir.
Paydanın sıfır olması durumunda boş değer döndürülür, aksi takdirde oran hesaplanır.
B AY I IL E İN T ERN ET
SAT I Ş L A RIN IN
B IRB IRIN E O RA N I SÜT UN ET IK ET L ERI
Özgün veri kaynağında BLANK işlevi tarafından değerlendirilen sütunda metin, boş dize veya null değer bulunabilir.
Özgün veri kaynağının SQL Server veritabanı olması durumunda null değerler ve boş dizeler farklı veri türleri
olarak işlenir. Ancak bu işlem için örtük tür dönüştürme işlemi gerçekleştirilir ve DAX bunları aynı kabul eder.
Ayrıca bkz.
Metin işlevleri (DAX)
ISBLANK işlevi (DAX)
CODE
8.05.2020 • 2 minutes to read
Bir metin dizesindeki ilk karakterin sayısal kodunu döndürür. Döndürülen kod, bilgisayarınız tarafından kullanılan
karakter kümesine karşılık gelir.
İŞ L ET IM SIST EM I K A RA K T ER K ÜM ESI
Windows ANSI
Sözdizimi
CODE(text)
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir metin dizesindeki ilk karakterin sayısal kodu.
Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ
COMBINEVALUES işlevi, iki veya daha fazla metin dizesini tek bir metin dizesinde birleştirir. Bu işlevin birincil amacı,
DirectQuery modellerindeki çok sütunlu ilişkileri desteklemektir. Ayrıntılar için bkz. Açıklamalar .
Sözdizimi
COMBINEVALUES(<delimiter>, <expression>, <expression>[, <expression>]…)
Parametreler
T ERIM TA N IM
ifade Değeri, tek bir metin dizesi olarak birleştirilecek bir DAX ifadesi.
Döndürülen değer
Birleştirilmiş dize.
Açıklamalar
COMBINEVALUES işlevi, giriş değerleri farklı olduğunda çıkış dizelerinin de farklı olacağını kabul eder ancak bunun
için herhangi bir doğrulama işlemi gerçekleştirmez. Bu varsayıma bağlı olarak COMBINEVALUES işlevi iki
DirectQuery tablosundaki birden fazla sütunu birleştiren bir ilişki oluşturma amacıyla hesaplanmış sütun
oluşturmak için kullanıldığında, sorgu zamanında iyileştirilmiş bir birleşim koşulu oluşturulur. Örneğin
Tablo1(Sütun1, Sütun2) ile Tablo2(Sütun1, Sütun2) arasında ilişki oluşturmak isteyen kullanıcılar, şu şekilde her bir
tabloda iki hesaplanmış sütun oluşturabilir:
Table1[CalcColumn] = COMBINEVALUES(",", Table1[Column1], Table1[Column2])
reservedStorageGb
Table2[CalcColumn] = COMBINEVALUES(",", Table2[Column1], Table2[Column2]) ,
Ardından Table1[CalcColumn] ile Table2[CalcColumn] arasında bir ilişki oluşturabilir. Karşılık gelen SQL işleçlerine
ve işlevlerine çevrilen DAX işlevlerinden ve işleçlerinden farklı olarak yukarıdaki ilişki şu şekilde bir SQL birleşim
koşulu oluşturur:
(Table1.Column1 = Table2.Column1 OR Table1.Column1 IS NULL AND Table2.Column1 IS NULL)
reservedStorageGb
(Table1.Column2 = Table2.Column2 OR Table1.Column2 IS NULL AND Table2.Column2 IS NULL) .
Birleşim koşulu, karmaşık SQL işleçleri ve işlevleri içeren örneklerden çok daha iyi bir performans sunabilir.
COMBINEVALUES işlevinin doğru çalışması için kullanıcıların benzersiz giriş değerlerinin benzersiz çıkış dizeleri
oluşturmasını sağlama amacıyla uygun sınırlayıcıyı seçmesi gerekir ancak işlev bununla ilgili bir doğrulama işlemi
gerçekleştirmez. Örneğin kullanıcıların sınırlayıcı olarak "| " seçmesi ancak Tablo1 içindeki satırlardan birinde
Table1[Column1] = "| " ve Table2 [Column2] = " " , Tablo2'deki satırlardan birinde ise Table2[Column1] = " " ve
Table2[Column2] = "| " olması durumunda birleştirilen iki çıkış aynı ( "|| " ) olur. Bu da iki satırın birleşim
işleminde eşleştiğini gösteriyor gibi yorumlanabilir. İki tablonun da aynı DirectQuery kaynağından alınması
durumunda satırlar birleştirilmez ancak iki tablonun içeri aktarılması halinde birleştirme gerçekleştirilir.
Örnek
Aşağıdaki DAX işlevi:
EVALUATE DISTINCT(SELECTCOLUMNS(DimDate, "Month", COMBINEVALUES(",", [MonthName], [CalendarYear])))
[ AY ]
Ocak,2007
Şubat,2007
Mart,2007
Nisan,2007
Mayıs,2007
Haziran,2007
Temmuz,2007
Ağustos,2007
Eylül,2007
Ekim,2007
Kasım,2007
Aralık,2007
Ocak,2008
Ocak,2008
Şubat,2008
Mart,2008
Nisan,2008
Mayıs,2008
Haziran,2008
[ AY ]
Temmuz,2008
Ağustos,2008
Eylül,2008
Ekim,2008
Kasım,2008
Aralık,2008
CONCATENATE
8.05.2020 • 4 minutes to read
Sözdizimi
CONCATENATE(<text1>, <text2>)
Parametreler
T ERIM TA N IM
metin1, metin2 Tek bir metin dizesinde birleştirilecek metin dizeleri. Dizeler
metin veya sayı içerebilir.
Döndürülen değer
Birleştirilmiş dize.
Açıklamalar
CONCATENATE işlevi, iki metin dizesini tek bir metin dizesinde birleştirir. Birleştirilen öğeler metin, sayılar veya
metin olarak gösterilen Boole değerleri veya bunların birleşimi olabilir. Sütun uygun değerleri içeriyorsa sütun
başvurusu da kullanabilirsiniz.
DAX'taki CONCATENATE işlevi yalnızca iki bağımsız değişken kabul eder ancak Excel'deki CONCATENATE işlevine
en fazla 255 bağımsız değişken eklenebilir. Birden fazla sütunu birleştirmeniz gerekiyorsa hesaplama dizisi
oluşturabilir veya daha da iyisi birleştirme işlecini ( & ) kullanarak tümünü birleştirip daha basit bir ifade elde
edebilirsiniz.
Sütun başvurusu kullanmak yerine metin dizelerini doğrudan kullanmak istiyorsanız her bir dizeyi çift tırnak içine
almanız gerekir.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Yorumlar
Bu formül, iç içe yerleştirilmiş CONCATENATE ve IF işlevleri ile ve (&) işlecini kullanarak üç dize değerini koşullu
olarak birleştirir ve ayırıcı olarak boşluk ekler.
Kod
Yorumlar
DAX'taki CONCATENATE işlevi yalnızca iki bağımsız değişken kabul eder ancak Excel'deki CONCATENATE işlevine
en fazla 255 bağımsız değişken eklenebilir. Daha fazla bağımsız değişken eklemeniz gerekiyorsa ve (&) işlecini
kullanabilirsiniz. Örneğin aşağıdaki formül MTN-40 ve MTN-42 sonuçlarını döndürür.
Ayrıca bkz.
Metin işlevleri (DAX)
CONCATENATEX
8.05.2020 • 2 minutes to read
Söz dizimi
CONCATENATEX(<table>, <expression>, [delimiter])
Parametreler
T ERIM TA N IM
Döndürülen değer
Metin dizesi.
Açıklamalar
Bu işlev ilk bağımsız değişken olarak bir tablo veya tablo dönüştüren bir ifade alır. İkinci bağımsız değişken,
birleştirmek istediğiniz değerleri içeren bir sütun veya değer döndüren bir ifadedir.
Örnek
Employees (Çalışanlar) tablosu
F IRST N A M E L A ST N A M E
Alan Brewer
Michael Blythe
İki metin dizesini karşılaştırır ve tamamen aynı olmaları durumunda TRUE, aksi takdirde FALSE döndürür. EXACT,
büyük/küçük harfe duyarlıdır ancak biçimlendirme farklarını yoksayar. Bir belgeye girilen metinleri sınamak için
EXACT işlevini kullanabilirsiniz.
Söz dizimi
EXACT(<text1>,<text2>)
Parametreler
T ERIM TA N IM
Örnek
Aşağıdaki formül, geçerli satırdaki Sütun1 ve Sütun2 değerlerini denetleyip aynı olmaları halinde TRUE, farklı
olmaları halinde ise FALSe döndürür.
=EXACT([Column1],[Column2])
Ayrıca bkz.
Metin işlevleri (DAX)
FIND
8.05.2020 • 2 minutes to read
Başka bir metin dizesinin içinde yer alan bir metin dizesinin başlangıç konumunu döndürür. FIND büyük/küçük
harfe duyarlıdır.
Sözdizimi
FIND(<find_text>, <within_text>[, [<start_num>][, <NotFoundValue>]])
Parametreler
T ERIM TA N IM
Açıklamalar
Microsoft Excel'de FIND işlevinin tek baytlı karakter kümesi (SBCS) ve çift baytlı karakter kümesi (DBCS) dillerine
uygun birden fazla sürümü vardır ancak DAX'ta Unicode kullanıldığından ve her karakter aynı şekilde sayıldığından
karakter türüne göre farklı bir sürüm kullanmanıza gerek yoktur.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
FIND işlevi joker karakterleri desteklemez. Joker karakter kullanmak için SEARCH işlevini kullanın.
Örnek
Aşağıdaki formül, ürün açıklamasını içeren dizede ürüne ait BMX ifadesinin ilk harfinin konumunu bulur.
Sayıyı belirtilen sayıda ondalık basamağa yuvarlar ve sonucu metin olarak döndürür. Sonucun virgülle veya
virgülsüz olarak döndürülmesini sağlayabilirsiniz.
Söz dizimi
FIXED(<number>, <decimals>, <no_commas>)
Parametreler
T ERIM TA N IM
Açıklamalar
ondalıklar parametresi için kullanılan değer negatifse sayı ondalık noktanın soluna yuvarlanır.
ondalıklar değerini atlarsanız, 2 olarak kabul edilir.
virgül_yok değeri 0 ise veya atlanırsa, döndürülen metin her zamanki gibi virgül içerir.
Sayı içeren bir hücreyi komut kullanarak biçimlendirme ile bir sayıyı FIXED işlevini kullanarak doğrudan
biçimlendirme arasındaki fark, FIXED işlevinin sonucu metne dönüştürmesidir. Biçimlendirme menüsünden
komutla biçimlendirilen bir sayı, sayı olarak kalır.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Örnek
Aşağıdaki örnek, PctCost sütunundaki geçerli satırın sayısal değerini ve 4 ondalık basamak ve virgül olmadan metin
olarak döndürür.
=FIXED([PctCost],3,1)
Sayılarda 15'ten fazla önemli basamak olamaz ancak ondalıklar 127'ye çıkabilir.
Ayrıca bkz.
Metin işlevleri (DAX)
Matematik ve Trigonometri işlevleri (DAX)
FORMAT
8.05.2020 • 2 minutes to read
Söz dizimi
FORMAT(<value>, <format_string>)
Parametreler
T ERIM TA N IM
değer Değerlendirme sonucunda tek bir değer veren bir değer veya
ifade.
Döndürülen değer
biçimlendirme_dizesi ile tanımlanan şekilde biçimlendirilmiş de ğeri içeren bir dize.
IMPORTANT
değer BLANK() ise işlev boş bir dize döndürür.
biçimlendirme_dizesi BLANK() ise değer "Genel Sayı" veya "Genel Tarih" biçimine göre (değer türüne bağlı olarak)
biçimlendirilir.
Açıklamalar
biçimlendirme_dizesi parametresini kullanma hakkında daha fazla bilgi için, aşağıdaki konu başlıklarını
inceleyin:
Tüm önceden tanımlanmış biçimlendirme dizeleri, sonucu biçimlendirirken geçerli kullanıcı yerel ayarını kullanır.
Cau t i on
DAX FORMAT işlevine bağımsız değişken olarak eklenen biçim dizeleri, .NET Framework tarafından kullanılan
biçim dizelerini değil, Visual Basic (OLE Otomasyonu) tarafından kullanılan biçim dizelerini temel alır. Bu nedenle,
bağımsız değişken herhangi bir tanımlı biçim dizesiyle eşleşmezse beklenmedik sonuçlara veya bir hata
alabilirsiniz. Örneğin "Yüzde" için "p" kısaltması desteklenmez. FORMAT işlevine bağımsız değişken olarak
sağladığınız önceden tanımlanmış biçim dizeleri listesine dahil olmayan dizeler, özel biçim dizesinin bir parçası
olarak veya dize sabiti olarak işlenir.
Bu DAX işlevinin DirectQuery modunda kullanılması desteklenmez. DirectQuery modellerindeki sınırlamalar
hakkında daha fazla bilgi için bkz. https://go.microsoft.com/fwlink/?LinkId=219172.
Ayrıca bkz.
FORMAT işlevi için önceden tanımlanmış sayısal biçimler
FORMAT işlevi için özel sayısal biçimler
FORMAT işlevi için önceden tanımlanmış tarih ve saat biçimleri
FORMAT işlevi için özel tarih ve saat biçimleri
VALUE işlevi (DAX)
FORMAT işlevi için önceden tanımlanmış sayısal
biçimler
8.05.2020 • 3 minutes to read
Aşağıdaki tabloda önceden tanımlı sayısal biçim adları tanımlanmaktadır. Bunlar FORMAT İşlevi için stil bağımsız
değişkeni olarak adlarıyla kullanılabilir.
B IÇ IM B EL IRT IM I A Ç IK L A M A
"Percent" Sayıyı 100 ile çarpıp hemen sağına bir yüzde işareti (%)
ekleyerek gösterir; ondalık ayırıcısının sağ tarafında her zaman
iki basamak gösterir.
Açıklamalar
Biçim dizelerinin Visual Basic (OLE Otomasyonu) tabanlı olduğunu ve bu nedenle .NET Framework tarafından
kullanılan biçim dizelerinden biraz farklı bir davranışa sahip olabileceğini unutmayın. "P" ve "x" gibi kısaltmalar
desteklenmez. FORMAT işlevine bağımsız değişken olarak sağladığınız diğer dizeler, özel biçim tanımlama olarak
yorumlanır.
IMPORTANT
değer BLANK() ise işlev boş bir dize döndürür.
format_string BLANK() ise değer "Genel Sayı" biçimine göre biçimlendirilir.
Örnek
Aşağıdaki örneklerde, sayısal bir değeri biçimlendirmek için önceden tanımlanmış farklı biçimlendirme dizelerinin
kullanımı gösterilmektedir.
Ayrıca bkz.
FORMAT işlevi (DAX)
FORMAT işlevi için önceden tanımlanmış tarih ve saat biçimleri
FORMAT işlevi için özel sayısal biçimler
FORMAT işlevi için özel sayısal biçimler
9.05.2020 • 9 minutes to read
Bu makalede, bir FORMAT ifadesindeki sayısal değerler için özel, kullanıcı tanımlı biçimler açıklanmaktadır.
B UN U K UL L A N IRSA N IZ SO N UÇ :
İki bölüm İlk bölüm pozitif değerlere ve sıfırlara, ikinci bölüm ise negatif
değerlere uygulanır.
Dört bölüm İlk bölüm pozitif değerlere, ikinci bölüm negatif değerlere,
üçüncü bölüm sıfırlara, dördüncü bölüm ise Null değerlere
uygulanır.
"$#,##0;($#,##0)"
Aralarında bir şey olmayan noktalı virgüller eklerseniz, eksik bölüm pozitif değerin biçimi kullanılarak tanımlanır.
Örneğin, aşağıdaki biçimde, ilk bölümdeki biçim kullanılarak pozitif ve negatif değerler görüntülenir; değer sıfır ise
“Sıfır” görüntülenir.
"$#,##0
K A RA K T ER A Ç IK L A M A
(#) Basamak yer tutucusu. Bir basamak görüntüler veya hiçbir şey
görüntülemez. İfade, biçim dizesinde # işaretinin göründüğü
yerde bir basamak içeriyorsa görüntüler; aksi takdirde o
konumda hiçbir şey göstermez. Bu sembol 0 rakamı yer
tutucusu gibi çalışır ancak sayının basamak sayısı, biçim
ifadesindeki ondalık ayıracının her iki tarafındaki # karakteri
sayısına eşit veya daha düşükse baştaki ve sondaki sıfırlar
gösterilmez.
(/) Tarih ayırıcısı. Bazı yerel ayarlarda, tarih ayırıcısını temsil etmek
için başka karakterler kullanılabilir. Tarih ayırıcısı, tarih değerleri
biçimlendirilirken gün, ay ve yılı ayırır. Biçimlendirilmiş çıktıda
tarih ayırıcısı olarak kullanılan gerçek karakter, sistem
ayarlarınıza göre belirlenir.
Açıklamalar
Aralarında bir şey olmayan noktalı virgüller eklerseniz, eksik bölüm pozitif değerin biçimi kullanılarak yazdırılır.
Ayrıca bkz.
FORMAT işlevi (DAX)
FORMAT işlevi için önceden tanımlanmış sayısal biçimler
FORMAT işlevi için özel tarih ve saat biçimleri
FORMAT işlevi için önceden tanımlanmış tarih ve saat
biçimleri
8.05.2020 • 2 minutes to read
Aşağıdaki tabloda önceden tanımlı tarih ve saat biçimi adları tanımlanmaktadır. Bu önceden tanımlanmış dizeler
dışında farklı dizeler kullanırsanız, bunlar özel tarih ve saat biçimi olarak yorumlanır.
B IÇ IM B EL IRT IM I A Ç IK L A M A
"Long Date" veya "Medium Date" Geçerli kültürün uzun tarih biçimine göre bir tarih görüntüler.
Örneğin, 12 Mart 2008 Çarşamba.
"Short Date" Geçerli kültürün kısa tarih biçimini kullanarak bir tarih
görüntüler. Örneğin, 12.03.2008.
"Long Time" veya Geçerli kültürün uzun saat biçimini kullanarak bir saat
görüntüler ve genellikle saat, dakika ve saniye içerir. Örneğin,
11:07:31.
Açıklamalar
Biçimlendirme dizeleri, .NET Framework biçimlendirme dizeleri değil Visual Basic (OLE Otomasyonu) tabanlıdır. Bu
nedenle, sonuçlarınız .NET biçim dizelerinden beklediğinizden biraz farklı olabilir. Uzun Tarih için “D” ve Kısa Saat
için “t” gibi kısaltmaların desteklenmediğini unutmayın.
IMPORTANT
değer BLANK() ise işlev boş bir dize döndürür.
format_string BLANK() ise değer "Genel Tarih" biçimine göre biçimlendirilir.
Ayrıca bkz.
FORMAT işlevi için özel tarih ve saat biçimleri
FORMAT işlevi için özel tarih ve saat biçimleri
8.05.2020 • 7 minutes to read
Aşağıdaki tabloda kullanıcı tanımlı tarih/saat biçimleri oluşturmak için kullanılan karakterler gösterilmektedir.
(/) Tarih ayırıcısı. Bazı yerel ayarlarda, tarih ayırıcısını temsil etmek
için başka karakterler kullanılabilir. Tarih ayırıcısı, tarih değerleri
biçimlendirilirken gün, ay ve yılı ayırır. Biçimlendirilmiş çıktıda
tarih ayırıcısı olarak kullanılan gerçek karakter, sistem
ayarlarınıza göre belirlenir.
Açıklamalar
Tarih/Saat biçimlendirmesi, dizenin son halini belirlemek için geçerli kullanıcı yerel ayarını kullanır. Örneğin 18
Mart 1995 tarihi “m/d/yyyy” biçimlendirme dizesi ile biçimlendirildiğinde, kullanıcı yerel ayarı ABD (en-us) ise
“3/12/1995” sonucu, Almanya (de-de) ise “18.03.1995” sonucu elde edilir.
Ayrıca bkz.
FORMAT işlevi (DAX)
FORMAT işlevi için özel sayısal biçimler
FORMAT işlevi için önceden tanımlanmış tarih ve saat biçimleri
LEFT
8.05.2020 • 2 minutes to read
Sözdizimi
LEFT(<text>, <num_chars>)
Parametreler
T ERIM TA N IM
Açıklamalar
Microsoft Excel'de tek bayt ve çift bayt karakter dilleri için farklı işlevler vardır ancak DAX'ta Unicode
kullanıldığından tüm karakterler aynı uzunlukta depolanır ve bu nedenle tek bir işlev yeterlidir.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki örnek, [ResellerName] sütunundaki şirket adının ilk beş karakterini ve [GeographyKey] sütunundaki
coğrafi kodun ilk beş harfini döndürüp bunları birleştirerek bir tanımlayıcı oluşturmaktadır.
=CONCATENATE(LEFT('Reseller'[ResellerName],LEFT(GeographyKey,3))
sayı_karakter bağımsız değişkeni kullanılabilir karakter sayısından daha büyük bir sayı olduğunda işlev,
kullanılabilir maksimum karakter sayısını döndürür ve bir hata oluşturmaz. Örneğin [GeographyKey] sütununda 1,
12 ve 311 gibi sayılar olduğu için sonucun uzunluğu da değişken olacaktır.
Ayrıca bkz.
Metin işlevleri (DAX)
LEN
8.05.2020 • 2 minutes to read
Sözdizimi
LEN(<text>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Metin dizesindeki karakter sayısını belirten bir tamsayı.
Açıklamalar
Microsoft Excel'de tek bayt ve çift bayt karakter dilleriyle çalışmak için farklı işlevler vardır ancak DAX'ta Unicode
kullanıldığından tüm karakterler aynı uzunlukta depolanır.
Bu nedenle LEN, varsayılan dil ayarı ne olduğuna bakılmaksızın her karakteri 1 olarak sayar.
LEN işlevini tarih veya Boole değeri gibi metin olmayan değerler içeren bir sütunda kullanırsanız işlev geçerli sütun
biçimini kullanarak değeri örtük bir şekilde metne dönüştürür.
Örnek
Aşağıdaki formül, [AddressLine1] ve [AddressLine2] sütunlarındaki adreslerin uzunluğunu toplar.
=LEN([AddressLine1])+LEN([AddressLin2])
LOWER
8.05.2020 • 2 minutes to read
Söz dizimi
LOWER(<text>)
Parametreler
T ERIM TA N IM
Açıklamalar
Harf olmayan karakterler değişmez. Örneğin =LOWER("123ABC") formülü 123abc döndürür.
Örnek
Aşağıdaki formül, [ProductCode] sütunundaki her satırı alır ve değeri tümü küçük harfe dönüştürür. Sütundaki
sayılar etkilenmez.
=LOWER('New Products'[ProductCode])
Ayrıca bkz.
Metin işlevleri (DAX)
MID
8.05.2020 • 2 minutes to read
Verilen konumdan başlamak üzere metnin ortasından verilen uzunlukta bir karakter dizesi döndürür.
Sözdizimi
MID(<text>, <start_num>, <num_chars>)
Parametreler
T ERIM TA N IM
Açıklamalar
Microsoft Excel'de tek bayt ve çift bayt karakter dilleriyle çalışmak için farklı işlevler vardır ancak DAX'ta Unicode
kullanıldığından tüm karakterler aynı uzunlukta depolanır.
Örnekler
Şu ifade,
MID("abcde",2,3))
MID('Reseller'[ResellerName],1,5))
LEFT([ResellerName],5) ile aynı sonucu döndürür. Her iki ifade de [ResellerName] sütununun ilk 5 harfini
döndürür.
Ayrıca bkz.
Metin işlevleri (DAX)
REPLACE
9.05.2020 • 2 minutes to read
REPLACE, bir metin dizesinin belirttiğiniz sayıda karaktere sahip olan bölümünü başka bir metin dizesiyle değiştirir.
Söz dizimi
REPLACE(<old_text>, <start_num>, <num_chars>, <new_text>)
Parametreler
T ERIM TA N IM
Açıklamalar
Microsoft Excel'de tek bayt ve çift bayt karakter dilleri için farklı işlevler vardır ancak DAX'ta Unicode
kullanıldığından tüm karakterler aynı uzunlukta depolanır.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Örnek
Aşağıdaki formül, [ProductCode] sütununda yer alan ürün kodunun ilk iki karakterini yeni bir iki harfli kodla (OB)
değiştiren yeni bir hesaplanmış sütun oluşturur.
Ayrıca bkz.
Metin işlevleri (DAX)
SUBSTITUTE işlevi (DAX)
REPT
8.05.2020 • 2 minutes to read
Metni verilen sayıda yineler. Hücreyi bir metin dizesinin bir dizi örneğiyle doldurmak için REPT kullanın.
Sözdizimi
REPT(<text>, <num_times>)
Parametreler
T ERIM TA N IM
Açıklamalar
yineleme_sayısı 0 (sıfır) ise REPT boş değer döndürür.
yineleme_sayısı bir tamsayı değilse kesilir.
REPT işlevinin sonucu 32.767 karakterden uzun olamaz, olması halinde REPT bir hata döndürür.
=REPT("85",3)
=REPT([MyText],[MyNumber])
Yorumlar
M Y T EXT M Y N UM B ER C A L C UL AT EDC O L UM N 1
Metin 2 TextText
Sayı 0
85 3 858585
Ayrıca bkz.
Metin işlevleri (DAX)
RIGHT
8.05.2020 • 2 minutes to read
RIGHT, belirttiğiniz karakter sayısına göre bir metin dizesindeki son karakteri veya karakterleri döndürür.
Sözdizimi
RIGHT(<text>, <num_chars>)
Parametreler
T ERIM TA N IM
Açıklamalar
RIGHT, varsayılan dil ayarı ne olduğuna ve tek veya çift bayt durumuna bakılmaksızın her karakteri 1 olarak sayar.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
=RIGHT('New Products'[ProductCode],2)
=RIGHT('New Products'[ProductCode],[MyCount])
Ayrıca bkz.
Metin işlevleri (DAX)
LEFT işlevi (DAX)
MID işlevi (DAX)
SEARCH
8.05.2020 • 5 minutes to read
Soldan sağa okuyarak belirli bir karakter veya metin dizesinin ilk bulunduğu karakter sayısını döndürür. SEARCH
işlevi büyük/küçük harfe duyarlı değildir ancak aksana duyarlıdır.
Sözdizimi
SEARCH(<find_text>, <within_text>[, [<start_num>][, <NotFoundValue>]])
Parametreler
T ERIM TA N IM
Döndürülen değer
İlk metin dizesinin, ikinci metin dizesinin ilk karakterinden itibaren başlangıç konumu.
Açıklamalar
1. SEARCH işlevi büyük/küçük harfe duyarlı değildir. "N" aradığınızda ilk "N" veya "n" örneğini bulur.
2. SEARCH işlevi aksana duyarlıdır. "á" aradığınızda ilk "á" örneğini bulur ancak "a", "à" veya büyük "A", "Á"
örneklerini bulmaz.
3. Bu işlevi kullanarak bir metin dizesini ikinci bir metin dizesinin içinde bulabilir ve ilk dizenin başladığı
konumu döndürebilirsiniz.
4. SEARCH işlevini kullanarak bir karakterin veya metin dizesinin başka bir metin dizesindeki konumunu
belirleyebilir ve ardından MID işlevini kullanarak metni döndürebilir veya REPLACE işlevini kullanarak metni
değiştirebilirsiniz.
5. metin_bul değeri metin_içinde değerinde yoksa formül bir hata döndürür. Bu davranış Excel'de olduğu
gibidir ve orada da alt dize bulunamadığında #VALUE hatası döndürülür. metin_içinde içindeki null
değerler, bu bağlamda boş dize olarak yorumlanır.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
=SEARCH("n","printer")
Yorumlar
"n" harfi, "printer" sözcüğünün dördüncü karakteri olduğu için formül 4 değerini döndürür.
=SEARCH("-",[PostalCode])
Yorumlar
Döndürülen sonuçta kısa çizginin dizin konumunu belirten sayıların olduğu bir sütun bulunur.
= IFERROR(SEARCH("-",[PostalCode]),-1)
Yorumlar
Hata çıktısı olarak kullandığınız değerin veri türünün hata olmayan çıktı türünün veri türüyle eşleşmesi gerektiğini
unutmayın. Bu durumda SEARCH işlevi tamsayı değeri döndürdüğünden hata durumunda döndürülmesi için bir
sayısal değer sağlamanız gerekir.
Ancak IFERROR işlevinde ikinci bağımsız değişken olarak BLANK() kullanarak boş değer (boş dize) de
döndürebilirsiniz.
Ayrıca bkz.
MID işlevi (DAX)
REPLACE işlevi (DAX)
Metin işlevleri (DAX)
SUBSTITUTE
8.05.2020 • 2 minutes to read
Sözdizimi
SUBSTITUTE(<text>, <old_text>, <new_text>, <instance_num>)
Parametreler
T ERIM TA N IM
Açıklamalar
Bir metin dizesindeki belirli bir metni değiştirmek istediğinizde SUBSTITUTE işlevini, bir metin dizesinin belirli bir
konumunda yer alan ve farklı uzunluklara sahip olan metinleri değiştirmek için ise REPLACE işlevini kullanın.
SUBSTITUTE işlevi büyük/küçük harfe duyarlıdır. metin ile eski_metin içindeki büyük/küçük harf durumları aynı
değilse SUBSTITUTE işlevi metni değiştirmez.
Bu DAX işlevi, dağıtılan ve ardından DirectQuery modunda sorgulanan bir modelde kullanıldığında farklı sonuçlar
döndürebilir. DirectQuery modundaki semantik farklılıklar hakkında daha fazla bilgi için bkz.
https://go.microsoft.com/fwlink/?LinkId=219171.
Kelimeler arasındaki tek boşluklar hariç olmak üzere bir metindeki tüm boşlukları kaldırır.
Sözdizimi
TRIM(<text>)
Parametreler
T ERIM TA N IM
Açıklamalar
TRIM işlevini başka bir uygulamadan aldığınız ve boşlukları düzensiz olan metinlerde kullanabilirsiniz.
TRIM işlevi başlangıçta 7 bit ASCII boşluk karakterini (değer 32) metinden kaldırmak üzere tasarlanmıştır. Unicode
karakter kümesinde 160 ondalık değerine ve bölünemez boşluk karakteri adına sahip olan ek bir boşluk karakteri
daha vardır. Bu karakter genellikle Web sayfalarında HTML varlığı olarak kullanılır: . TRIM işlevi tek başına
bu bölünemez boşluk karakterini kaldırmaz. İki boşluk karakterini de metinden kaldırma örneği için bkz. Metindeki
boşlukları ve yazdırılmayan karakterleri kaldırma.
Örnek
Aşağıdaki formül, sonunda boşluk bulunmayan yeni bir dize oluşturur.
Oluşturduğunuz formül, siz yazarken satıra yayılır, böylece her formülde özgün dizeyi görürsünüz ve sonuçlar
görünür olmaz. Ancak formül değerlendirildiğinde dize kırpılır.
Aşağıda gösterilen şekilde önceki formülün oluşturduğu hesaplanmış sütunun uzunluğunu denetleyerek formülün
doğru sonucu verdiğini doğrulayabilirsiniz:
Ayrıca bkz.
Metin işlevleri (DAX)
UNICHAR
8.05.2020 • 2 minutes to read
Söz dizimi
UNICHAR(number)
Parametreler
T ERIM TA N IM
Döndürülen değer
Unicode sayısıyla temsil edilen bir karakter.
Açıklamalar
XML karakterleri geçersiz değilse UNICHAR bir hata döndürür.
Unicode sayıları kısmi vekiller ise ve veri türleri geçerli değilse UNICHAR bir hata döndürür.
Sayılar izin verilen aralığın dışında kalan sayısal değerler ise UNICHAR bir hata döndürür.
Sayı sıfır (0) ise UNICHAR bir hata döndürür.
Döndürülen Unicode karakteri UTF-8 veya UTF-16 kodlarında bir karakter dizesi olabilir.
Örnek
Aşağıdaki örnek, Unicode 66 tarafından temsil edilen karakteri (büyük A) döndürür.
=UNICHAR(65)
Aşağıdaki örnek, Unicode 32 tarafından temsil edilen karakteri (boşluk karakteri) döndürür.
=UNICHAR(32)
Aşağıdaki örnek, Unicode 9733 tarafından temsil edilen karakteri (★ karakteri) döndürür.
=UNICHAR(9733)
UNICODE
8.05.2020 • 2 minutes to read
Sözdizimi
UNICODE( <Text> )
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir metin dizesindeki ilk karakterin sayısal kodu.
UPPER
8.05.2020 • 2 minutes to read
Sözdizimi
UPPER (<text>)
Parametreler
T ERIM TA N IM
Örnek
Aşağıdaki formül, [ProductCode] sütunundaki dizeyi tamamı büyük harfe dönüştürür. Alfabe dışı karakterler
etkilenmez.
Ayrıca bkz.
Metin işlevleri (DAX)
LOWER işlevi (DAX)
VALUE
8.05.2020 • 2 minutes to read
Söz dizimi
VALUE(<text>)
Parametreler
T ERIM TA N IM
Döndürülen değer
Ondalık veri türündeki dönüştürülmüş sayı.
Açıklamalar
metin parametresi olarak geçirilen değer, kullanmakta olduğunuz uygulama veya hizmetler tarafından tanınan
sabit, sayı, tarih veya saat biçimlerinden herhangi birinde olabilir. metin bu biçimlerden birinde değilse bir hata
döndürülür.
Altyapı, metni gerektiğinde örtük olarak sayıya dönüştürdüğünden genellikle bir formülde VALUE işlevini
kullanmanız gerekmez.
Sütun başvurularını da kullanabilirsiniz. Örneğin, karışık sayı türleri içeren bir sütununuz varsa VALUE ile tüm
değerleri tek bir sayısal veri türüne dönüştürebilirsiniz. Ancak VALUE işlevini karışık sayılar ve metin içeren bir
sütun ile kullanırsanız tüm satırlardaki tüm değerler sayılara dönüştürülemediği için tüm sütun bir hata ile
işaretlenir.
Örnek
Aşağıdaki formül "3" metin dizesini 3 sayısal değerine dönüştürür.
=VALUE("3")
Ayrıca bkz.
Metin işlevleri (DAX)
Deyimler
8.05.2020 • 2 minutes to read
Bu kategoride
DEY IM A Ç IK L A M A
Bir DAX sorgusunun bir veya daha fazla EVALUATE deyimine uygulanabilen varlıkları tanımlayan anahtar sözcük.
Söz dizimi
DEFINE { <entity> [<name>] = <expression> }
Bağımsız değişkenler
T ERIM TA N IM
ifade Tek bir skaler değer döndüren bir DAX ifadesi. İfade, tanımlı
varlıkların herhangi birini kullanabilir. İfade bir tablo
döndürmelidir. Skaler değer gerekliyse tablo oluşturmak için
skaler değeri bir ROW() işlevine yerleştirin.
Açıklamalar
Varlıklar; değişkenler, ölçüler, tablolar ve sütunlar olabilir.
Tanımlar genelde EVALUATE deyiminden önce gelirler ve tüm EVALUATE deyimleri için geçerli olurlar.
Tanımlar, geçerli tanımdan önce veya sonra görünen diğer tanımlara başvurabilir.
Tanımlar yalnızca sorgunun süresi boyunca kalıcı olur.
Ayrıca bkz.
DAX sorguları
ORDER BY
VAR
EVALUATE
9.05.2020 • 2 minutes to read
Sözdizimi
EVALUATE <table>
Parametreler
T ERIM TA N IM
Döndürülen değer
Bir tablo ifadesinin sonucu.
Açıklamalar
Bir sorguda birden fazla EVALUATE deyimi bulunabilir.
Örnek
EVALUATE(
'Internet Sales'
)
Ayrıca bkz.
DAX sorguları
DEFINE
ORDER BY
SİPARİŞ VEREN
8.05.2020 • 2 minutes to read
Bir DAX sorgusunda EVALUATE deyimi tarafından döndürülen sorgu sonuçlarının sıralama düzenini tanımlar.
Söz dizimi
ORDER BY {<expression> [{ASC | DESC}]}
Bağımsız değişkenler
T ERIM TA N IM
Döndürülen değer
Bir EVALUATE deyiminin artan (ASC) veya azalan (DESC) düzende sıralanmış sonucu.
Örnek
EVALUATE(
'Internet Sales'
)
ORDER BY
'Internet Sales'[Order Date]
İnternet Satışları tablosundaki tüm satırları ve sütunları Sipariş Tarihine göre sıralanmış bir tablo olarak döndürür.
Ayrıca bkz.
DAX sorguları
EVALUATE
VAR
8.05.2020 • 3 minutes to read
Bir ifadenin sonucunu adlandırılmış değişken olarak depolar ve bu, daha sonra diğer ölçü ifadelerine bir bağımsız
değişken olarak geçirilebilir. Bir değişken ifadesi için sonuç değerleri hesaplandıktan sonra değişkene başka bir
ifade başvuru yapılsa bile bu değerler değişmez.
Söz dizimi
VAR <name> = <expression>
Parametreler
T ERIM TA N IM
Döndürülen değer
İfade bağımsız değişkeninin sonucunu içeren adlandırılmış değişken.
Özel Durumlar
Açıklamalar
VAR işlevine bağımsız değişken olarak geçirilen ifadelerde başka bir VAR bildirimi bulunabilir.
Bir değişkene başvururken:
Ölçüler, ölçü ifadesi dışında tanımlanmış olan değişkenlere başvuramaz ancak ifade içinde tanımlanmış olan
işlevsel kapsam değişkenlerine başvurabilir.
Değişkenler ölçülere başvurabilir.
Değişkenler daha önce tanımlanmış olan değişkenlere başvurabilir.
Tablo değişkenlerindeki sütunlara TabloAdı[SütunAdı] söz dizimi ile başvurulamaz.
Örnek
Değişken kullanmadan yıldan yıla büyüme yüzdesi hesabı yapmak için üç ayrı ölçü oluşturabilirsiniz. Bu ilk ölçü,
Satış Tutarı Toplamını hesaplar:
SalesAmount PreviousYear =
CALCULATE([Sum of SalesAmount],
SAMEPERIODLASTYEAR(Calendar[Date])
)
Ardından üçüncü bir ölçü oluşturarak bu iki ölçüyü birleştirip büyüme yüzdesini hesaplayabilirsiniz. Satış Tutarı
Toplamı ölçüsünün ilk olarak satış olup olmadığını belirlemek, daha sonra da yüzde hesaplamak için olmak üzere
iki kez kullanıldığına dikkat edin.
Bir değişken kullanarak aynı sonucu hesaplayan tek bir ölçü oluşturabilirsiniz:
VAR SalesLastYear =
CALCULATE ( SUM ( SalesTable[SalesAmount] ), SAMEPERIODLASTYEAR ( 'Calendar'[Date] ) )
Değişken kullanarak aynı sonucu daha okunaklı bir şekilde elde edebilirsiniz. Ayrıca ifadenin sonucu bildirim
sonrasında değişken içinde depolanır. Değişkende olduğu gibi her kullanıldığında yeniden hesaplanması
gerekmez. Bu durum, ölçünün performansını iyileştirebilir.
DAX söz dizimi
9.05.2020 • 15 minutes to read
İşlevin sonucu ve gerekli bağımsız değişkenleri. Bazı DAX işlevleri, skaler değer yerine tablo döndürür. Bu
işlevlerin, tablonun tek sütun, tek satırdan oluştuğu ve skaler değer olarak işlendiği durumların dışında
tabloyu değerlendirip skaler değer döndüren bir işlev içine sarmalanması gerekir.
Çoğu DAX işlevi bir veya daha fazla bağımsız değişken alır ve bunlar tablolar, sütunlar, ifadeler ve değerler
olabilir. PI gibi bazı işlevler bağımsız değişken almaz ancak ayraç ile null bağımsız değişkeninin belirtilmesi
gerekir. Örneğin, PI değil mutlaka PI() şeklinde yazmanız gerekir. Ayrıca işlevleri diğer işlevlerle iç içe
yerleştirebilirsiniz.
İfadeler. İfade, şunlardan birini veya hepsini içerebilir: İşleçler, sabitler veya sütun başvuruları.
F O RM ÜL SO N UÇ
=3 3
Adlandırma gereksinimleri
Veri modelinde genellikle birden çok tablo bulunur. Tablolar ve sütunları, bellek içi analiz altyapısında (VertiPaq)
depolanan bir veritabanı oluşturur. Bu veritabanı içindeki tüm tabloların benzersiz bir ada sahip olması gerekir. Her
tablonun içindeki sütunların adları da benzersiz olmalıdır. Nesne adları büyük/küçük harfe duyarlı değildir.
Örneğin, hem SATI ŞL AR hem de Satı şlar ifadesi aynı tabloyu belirtir.
Mevcut bir veri modeline eklediğiniz tüm sütun ve ölçülerin belirli bir tabloya ait olması gerekir. Sütunu içeren
tabloyu, tablo içinde hesaplanmış sütun oluştururken örtük olarak veya bir ölçü oluşturup ölçü tanımının
depolanacağı tablonun adını belirtirken açık olarak belirtirsiniz.
Bir işlevde giriş olarak tablo veya sütun kullandığınızda genellikle sütun adını nitelemeniz gerekir. Sütunun tam adı,
tablo adı ve ardından köşeli ayraç içinde sütun adı şeklinde belirtilir. Örneğin: 'U.S. Sales'[Products]. Şu
bağlamlarda bir sütuna başvurduğunuzda her zaman tam adı kullanmanız gerekir:
VALUES işlevinde bağımsız değişken olarak
ALL veya ALLEXCEPT işlevlerinde bağımsız değişken olarak
CALCULATE veya CALCULATETABLE işlevlerinde filtre bağımsız değişkeni olarak
RELATEDTABLE işlevinde bağımsız değişken olarak
Herhangi bir akıllı zaman gösterimi işlevinde bağımsız değişken olarak
Nitelenmemiş sütun adı, köşeli ayraç içine yazılmış sütun adından ibarettir. Örneğin: [Sales Amount]. Geçerli
tablonun aynı satırında yer alan bir skaler değere başvurma gibi durumlarda nitelenmemiş sütun adını
kullanabilirsiniz.
Tablo adında boşluklar, ayrılmış anahtar sözcükler veya izin verilmeyen karakterler varsa tablo adını tek tırnak
işaretleri arasında yazmanız gerekir. Ayrıca, yerel dilinizin karakter kümesini destekleyip desteklemediğine
bakılmaksızın, adın ANSI alfasayısal karakter aralığı dışında herhangi bir karakter içermesi durumunda da tablo
adını tırnak işareti içinde yazmanız gerekir. Örneğin "Таблица" gibi Kiril karakterleriyle yazılmış tablo adlarına
sahip olan bir çalışma kitabını açtığınızda, içinde boşluk olmasa dahi tablo adını tırnak içinde belirtmeniz gerekir.
NOTE
Formül düzenleyicisindeki Otomatik Tamamlama özelliğini kullanarak sütunların tam adını kolayca girebilirsiniz.
Tablolar
Sütunun geçerli tablodan farklı bir tablodan alındığı durumlarda tablo adının kullanılması gerekir. Tablo
adları, veritabanı içinde benzersiz olmalıdır.
Boşluk, özel karakterler veya İngiliz alfabesi dışında karakterler içeren tablo adlarının tek tırnak içine
alınması gerekir.
Ölçüler
Ölçü adları her zaman köşeli ayraç içinde olmalıdır.
Ölçü adlarında boşluk olabilir.
Ölçü adları model içinde benzersiz olmalıdır. Bu nedenle, mevcut bir tabloya başvururken ölçü adının
önünde tablo adının kullanılması isteğe bağlıdır. Ancak bir ölçü oluşturduğunuzda ölçü tanımının
depolanacağı tabloyu belirtmeniz gerekir.
Sütunlar
Sütun adları tablo bağlamında benzersiz olmalıdır ancak farklı tablolarda aynı ada sahip sütunlar bulunabilir
(ayrım için tablo adı kullanılır).
Genel olarak sütun başvuruları ait oldukları tablo adı olmadan yapılabilir ancak çözülmesi gereken ad çakışmaları
olduğunda veya sütun adlarının tam olarak nitelenmesini gerektiren işlevler kullanıldığında tam adların
kullanılması gerekir.
Ayrılmış anahtar sözcükler
Kullandığınız tablo adının Analysis Services ayrılmış anahtar sözcüklerinden biri olması durumunda hatayla
karşılaşırsınız ve tabloyu yeniden adlandırmanız gerekir. Ancak nesne adının köşeli ayraç (sütunlar için) veya tırnak
işareti (tablolar için) içine alınması durumunda bu anahtar sözcükleri nesne adlarında kullanabilirsiniz.
NOTE
Tırnak işaretleri uygulamaya bağlı olarak farklı karakterlerle gösterilebilir. Farklı bir belgede veya Web sayfasında yer alan
formülleri yapıştırırken açılış ve kapanış tırnaklarının ASCII kodunu denetleyerek aynı olduklarından emin olun. Aksi halde
DAX, sembolleri tırnak işareti olarak tanıyamayabilir ve bu durumda başvuru geçersiz olur.
Özel karakterler
Aşağıdaki karakterler ve karakter türleri tablo, sütun veya ölçü adlarında kullanılamaz:
Ad sınırlayıcı, köşeli ayraç veya tek tırnak içinde olmayan baştaki veya sondaki boşluklar.
Denetim karakterleri
Nesne adlarında aşağıdaki karakterler kullanılamaz:
.,;':/\|?&%$!+=()[]{}<>
Örnek nesne adları
Aşağıdaki tabloda bazı örnek nesne adları gösterilmektedir:
Tablo adı ‘Canada Sales’ Adın içinde boşluk, sekme veya özel
karakter varsa tek tırnak içine alın.
Tam sütun adı Sales[Amount] Sütun adından önce tablo adı yazılır ve
sütun adı köşeli ayraç içine alınır.
Tam ölçü adı Sales[Profit] Ölçü adından önce tablo adı yazılır ve
ölçü adı köşeli ayraç içine alınır. Belirli
bağlamlarda her zaman tam ad
kullanılması gerekir.
Nitelenmemiş sütun adı [Amount] Nitelenmemiş ad, köşeli ayraç içinde
yalnızca sütun adının yazılmasıdır. Aynı
tablo içindeki hesaplanmış sütun
formüllerinde veya aynı tabloyu tarayan
toplama işlevlerinde nitelenmemiş adı
kullanabilirsiniz.
Adında boşluk olan tablonun içindeki ‘Canada Sales’[Qty] Tablo adında boşluk bulunduğundan
tam sütun adı tek tırnak içine alınmalıdır.
Diğer kısıtlamalar
Her işlev için geçerli olan söz dizimi ve işlevlerin gerçekleştirebileceği işlem türleri büyük farklılık gösterebilir.
Ancak aşağıdaki genel kurallar tüm formüller ve ifadeler için geçerlidir:
DAX formülleri ve ifadeleri, tablolardaki tek değerleri değiştiremez ve tabloya tek değer ekleyemez.
DAX kullanarak hesaplanmış satır oluşturamazsınız. Yalnızca hesaplanmış sütunlar ve ölçüler
oluşturabilirsiniz.
Hesaplanmış sütunları tanımlarken işlevleri istediğiniz düzeyde iç içe yerleştirebilirsiniz.
Tablo döndüren birden fazla DAX işlevi vardır. Genellikle bu işlevlerin döndürdüğü değerleri, giriş olarak
tablo alan diğer işlevlerde giriş olarak kullanırsınız.
İŞ L EÇ T ÜRÜ SEM B O L Ü VE K UL L A N IM I
- (çıkarma/
işaret)
* (çarpma)
/ (bölme)
> (büyüktür)
< (küçüktür)
|| (veya)
Veri türleri
DAX formülünde kullandığınız sütunun veya değerin veri türünü oluşturmanıza, dönüştürmenize veya başka bir
şekilde belirtmenize gerek yoktur. DAX formülünde veri kullandığınızda DAX otomatik olarak başvurulan
sütunlardaki ve yazdığınız değerlerdeki veri türlerini tanımlar ve belirtilen işlemi tamamlamak için gerektiğinde
örtük dönüştürme işlemleri gerçekleştirir.
Örneğin, bir tarih değerine bir sayı eklemeye çalıştığınızda altyapı bu işlemi işlev bağlamında yorumlar ve sayıları
ortak bir veri türüne dönüştürüp sonucu istenen tarih biçiminde sunar.
Ancak başarıyla dönüştürülebilecek olan değerlerle ilgili bazı sınırlamalar vardır. Değerin veya sütunun geçerli
işlemle uyumlu olmayan bir veri türüne sahip olması durumunda DAX bir hata döndürür. DAX ayrıca bir veri
modeline aktardığınız verilerin türünü açıkça değiştirmenizi, dönüştürmenizi veya belirlemenizi sağlayan işlevler
sunmaz.
IMPORTANT
DAX, değişken veri türünün kullanılmasını desteklemez. Bu nedenle, veri modeline veri yüklerken veya aktarırken, her
sütundaki verilerin tutarlı bir veri türüne sahip olması beklenir.
Bazı işlevler, dizeler gibi skaler değerler döndürürken bazıları da tamsayılar ve gerçek sayılar gibi sayılarla veya
tarih ve saat değerleriyle çalışır. İşlevler için gerekli olan veri türleri, DAX işlevleri bölümünde açıklanmıştır.
İşlev bağımsız değişkeni olarak birden fazla sütun ve birden fazla satır içeren tabloları kullanabilirsiniz. Bazı işlevler
de bellek içinde depolanan ve diğer işlevlerde bağımsız değişken olarak kullanılabilen tablolar döndürür.
DAX işleçleri
26.05.2020 • 12 minutes to read
Veri Çözümleme İfadeleri (DAX) dilinde; değerleri karşılaştıran, aritmetik hesaplamalar yapan veya dizelerle
çalışan ifadeler oluşturmak için işleçler kullanılır. Bu bölümde işleçlerin kullanım şekli açıklanmaktadır.
İşleç türleri
Aritmetik, karşılaştırma, metin birleştirme ve mantıksal olmak üzere dört farklı hesaplama işleci türü vardır.
Aritmetik işleçler
Toplama, çıkarma veya çarpma gibi temel matematiksel işlemleri gerçekleştirmek, sayıları birleştirmek ve sayısal
sonuçlar elde etmek için aşağıdaki aritmetik işleçler kullanılır.
A RIT M ET IK I Ş L EÇ ANLAMI Ö RN EK
NOTE
Artı işareti hem ikili işleç hem de birli işleç olarak çalışabilir. İkili işleç için işlecin iki tarafında da sayı olması gerekir ve bu
durumda toplama işlemi gerçekleştirilir. Bir DAX formülünde ikili işlecin iki tarafında da değer kullandığınızda, bu değerler
sayı değilse DAX bu değerleri sayısal veri türlerine dönüştürmeye çalışır. Birli işleç ise her türlü bağımsız değişkene
uygulanabilir. Artı sembolü, türü veya değeri değiştirmez ve yoksayılır ancak eksi işleci sayısal bir değere uygulandığında
negatif değer oluşturur.
Karşılaştırma işleçleri
Aşağıdaki işleçleri kullanarak iki değeri karşılaştırabilirsiniz. Bu işleçleri kullanarak iki değeri karşılaştırdığınızda
sonuçta TRUE veya FALSE mantıksal değerini elde edersiniz.
K A R Ş IL A Ş T IRM A I Ş L EC I ANLAMI Ö RN EK
== dışındaki tüm karşılaştırma işleçlerinde BLANK; 0 rakamı, boş dize "", DATE(1899, 12, 30) veya FALSE olarak
kabul edilir. Sonuç olarak [Column] değeri 0 veya BLANK olduğunda [Column] = 0 formülü true değerini
döndürecektir. Buna karşılık [Column] == 0 yalnızca [Column] değeri 0 olduğunda true değerini döndürecektir.
Metin birleştirme işleci
İki veya daha fazla metin dizesini birleştirerek tek bir metin oluşturmak için ve işlecini (&) kullanabilirsiniz.
M ET IN I Ş L EC I ANLAMI Ö RN EK
& (ve işareti) İki değeri bağlayarak veya birleştirerek [Region] & ", " & [City]
tek bir sürekli metin değeri oluşturur
Mantıksal işleçler
İfadeleri birleştirerek tek bir sonuç elde etmek için (&&) ve (||) mantıksal işleçlerini kullanabilirsiniz.
M ET IN I Ş L EC I ANLAMI Ö RN EK L ER
&& (çift ve işareti) Her biri Boole sonucuna sahip olan iki ([Region] = "France") && ([BikeBuyer] =
ifade arasında bir AND koşulu oluşturur. "yes"))
İki ifadenin de TRUE değerini
döndürmesi durumunda ifadelerin
birleşimi de TRUE değerini döndürür;
aksi halde birleşim FALSE değerini
döndürür.
|| (çift dikey çubuk sembolü) İki mantıksal ifade arasında bir OR (([Region] = "France") || ([BikeBuyer] =
koşulu oluşturur. İfadelerden biri TRUE "yes"))
değerini döndürürse sonuç TRUE olur;
sonucun FALSE olması için iki ifadenin
de FALSE değerini döndürmesi gerekir.
İŞ L EÇ A Ç IK L A M A
^ Üs olarak gösterme
* ve / Çarpma ve bölme
+ ve – Toplama ve çıkarma
=,==,<,>,<=,>=,<> Karşılaştırma
=5+2*3
Ancak ayraç kullanarak söz dizimini değiştirirseniz önce 5 ve 2 toplanır, ardından elde edilen sonuç 3 ile çarpılır ve
21 değeri elde edilir.
=(5+2)*3
Aşağıdaki örnekte formülün ilk bölümündeki ayraçlar, hesaplamayı önce (3 + 0.25) ifadesini yapıp daha sonra
sonucu 3 - 0.25) ifadesinin sonucuyla bölmeye zorlamaktadır.
Aşağıdaki örnekte işleçlerin öncelik kurallarına göre önce üs olarak gösterme işleci, ardından da işaret işleci
uygulanır. Bu ifadenin sonucu -4 olur.
=-2^2
İşaret işlecinin sayısal değere önce uygulanmasını sağlamak için aşağıdaki örnekte gösterildiği gibi ayraçlarla
işleçleri denetleyebilirsiniz. Bu ifadenin sonucu 4 olur.
= (-2)^2
Uyumluluk
DAX, Microsoft Excel'de olduğu gibi birçok farklı veri türünü kolayca işler ve karşılaştırır. Ancak SQL Server
Analysis Services hesaplama altyapısı temel alındığından ilişkisel veri depolarının, tarih ve saat türleri için daha
kapsamlı destek gibi gelişmiş özelliklerine de sahiptir. Bu nedenle bazı durumlarda hesaplama sonuçları veya işlev
davranışları Excel'den farklı olabilir. Ayrıca DAX, Excel'den daha fazla veri türünü destekler. Bu bölümde ikisi
arasındaki önemli farklara yer verilmiştir.
Veri türlerini ve işleçleri zorlama
Genel olarak bir işlecin sol ve sağ tarafındaki işlenenler aynı veri türüne ait olmalıdır. Ancak veri türlerinin farklı
olması durumunda ve belirli durumlarda DAX, işleci uygulamak için bunları ortak bir veri türüne dönüştürür:
1. İki işlenen de mümkün olan en geniş ortak veri türüne dönüştürülür.
2. Mümkünse işleç uygulanır.
Örneğin, birleştirmek istediğiniz iki sayı olduğunu düşünelim. Sayının biri, = [Price] * .20 gibi bir formülden
elde ediliyor ve sonucun ondalık basamak içerme ihtimali var. Diğer sayı ise dize değeri olarak sağlanmış olan bir
tamsayı.
DAX bu durumda iki sayı türünü depolayabilecek en geniş sayısal biçimi kullanarak iki sayıyı da sayısal biçimdeki
gerçek sayılara dönüştürür. DAX, ardından çarpma işlemini uygular.
Veri türü birleşimine bağlı olarak tür zorlama işlemi karşılaştırma işleçleri için uygulanmayabilir. DAX tarafından
desteklenen veri türlerinin tam listesi için bkz. Tablosal modellerde desteklenen veri türleri ve Power BI
Desktop'taki veri türleri.
Tamsayı, Gerçek Sayı, Para Birimi, Tarih/saat ve Boş değerleri karşılaştırmada sayısal değer olarak kabul edilir. Boş
değerler, karşılaştırmada sıfır olarak değerlendirilir. Karşılaştırma işlemlerinde aşağıdaki veri türü birleşimleri
desteklenir.
Sayısal Sayısal
Boole Boole
Dize Dize
Diğer karma veri türü karşılaştırma işlemleri hata döndürür. Örneğin ="1" > 0 gibi bir formül şu hatayı döndürür:
DAX karşılaştırma işlemleri, Metin türündeki değerlerle Tamsayı türündeki değerlerin karşılaştırılmasını
desteklemez.
Dize Dize
Boole Boole
DateTime Değişken
Ayrıca bkz.
DAX söz dizimi
DAX parametrelerini adlandırma
DAX sorguları
21.05.2020 • 7 minutes to read
DAX sorgularıyla, bir tablo ifadesi tarafından tanımlanan verileri sorgulayabilir ve döndürebilirsiniz. Raporlama
istemcileri, rapor yüzeyine bir alan yerleştirildiğinde veya bir filtre ya da hesaplama uygulandığında DAX
sorguları oluşturur. DAX sorguları ayrıca SQL Server Management Studio’nun (SSMS) yanı sıra DAX Studio
(daxstudio.org) gibi açık kaynak araçlarda oluşturulabilir ve çalıştırılabilir. SSMS ve DAX Studio'da çalıştırılan
DAX sorguları sonuçları tablo biçiminde döndürür.
Sorguları öğrenmeden önce DAX konusundaki temel bilgileri iyice anlamanız önemlidir. Henüz yapmadıysanız
DAX genel bakış bilgilerini mutlaka gözden geçirin.
Söz dizimi
[DEFINE { MEASURE <tableName>[<name>] = <expression> }
{ VAR <name> = <expression>}]
EVALUATE <table>
[ORDER BY {<expression> [{ASC | DESC}]}[, …]
[START AT {<value>|<parameter>} [, …]]]
Anahtar Sözcükler
EVALUATE (Gerekli)
DAX sorguları en temel düzeyde bir tablo ifadesi içeren bir EVALUATE deyiminden ibarettir. Ancak bir sorguda
birden fazla EVALUATE deyimi bulunabilir.
Söz dizimi
EVALUATE <table>
Bağımsız değişkenler
T ERIM TA N IM
Örnek
EVALUATE(
'Internet Sales'
)
EVALUATE <table>
[ORDER BY {<expression> [{ASC | DESC}]}[, …]
Bağımsız değişkenler
T ERIM TA N IM
Örnek
EVALUATE(
'Internet Sales'
)
ORDER BY
'Internet Sales'[Order Date]
İnternet Satışları tablosundaki tüm satırları ve sütunları Sipariş Tarihine göre sıralanmış bir tablo olarak
döndürür.
START AT (İsteğe bağlı)
İsteğe bağlı START AT anahtar sözcüğü bir ORDER BY yan tümcesinin içinde kullanılır. Sorgu sonuçlarının
başlayacağı değeri tanımlar.
Söz dizimi
EVALUATE <table>
[ORDER BY {<expression> [{ASC | DESC}]}[, …]
[START AT {<value>|<parameter>} [, …]]]
Bağımsız değişkenler
T ERIM TA N IM
START AT bağımsız değişkenleri, ORDER BY yan tümcesindeki sütunlarla tam olarak eşleşir. START AT yan
tümcesinde ORDER BY yan tümcesindeki kadar bağımsız değişken olabilir, daha fazla olamaz. START AT içindeki
ilk bağımsız değişken, ORDER BY sütunlarının 1 numaralı sütunundaki başlangıç değerini tanımlar. START AT
içindeki ikinci bağımsız değişken, sütun 1 için ilk değeri karşılayan satırların içinde ORDER BY sütunlarının 2
numaralı sütunundaki başlangıç değerini tanımlar.
Örnek
EVALUATE(
'Internet Sales'
)
ORDER BY
'Internet Sales'[Sales Order Number]
START AT "SO7000"
İnternet Satışları tablosundaki tüm satırları ve sütunları SO7000 değerinden başlayarak Satış Siparişi
Numarasına göre sıralanmış bir tablo olarak döndürür.
Tek bir sorguda birden fazla EVALUATE /ORDER BY /START AT yan tümcesi belirtilebilir.
DEFINE (İsteğe bağlı)
İsteğe bağlı DEFINE anahtar sözcüğü, yalnızca sorgu süresi boyunca mevcut olan varlıkları tanımlar. Tanımlar
tüm EVALUATE deyimleri için geçerlidir. Varlıklar; değişkenler, ölçüler, tablolar ve sütunlar olabilir. Tanımlar,
geçerli tanımdan önce veya sonra görünen diğer tanımlara başvurabilir. Tanımlar genellikle EVALUATE
deyiminden önce gelir.
Söz dizimi
Bağımsız değişkenler
T ERIM TA N IM
ifade Tek bir skaler değer döndüren bir DAX ifadesi. İfade, tanımlı
ölçülerden herhangi birini kullanabilir. İfade bir tablo
döndürmelidir. Skaler değer gerekliyse tablo oluşturmak için
skaler değeri bir ROW() işlevine yerleştirin.
Örnek
DEFINE
MEASURE 'Internet Sales'[Internet Total Sales] = SUM('Internet Sales'[Sales Amount])
EVALUATE
SUMMARIZECOLUMNS
(
'Date'[Calendar Year],
TREATAS({2013, 2014}, 'Date'[Calendar Year]),
"Total Sales", [Internet Total Sales],
"Combined Years Total Sales", CALCULATE([Internet Total Sales], ALLSELECTED('Date'[Calendar Year]))
)
ORDER BY [Calendar Year]
2013 ve 2014 yılları için hesaplanmış toplam satış değeri ile 2013 ve 2014 yılları için hesaplanmış birleşik
toplam satış değerini bir tablo olarak döndürür. DEFINE deyimindeki ölçü olan İnternet Toplam Satışları, hem
Toplam Satışlar hem de Birleşik Yıllık Toplam Satışlar ifadelerinde kullanılır.
IMPORTANT
Parametreler bölümünde tanımlanan ve <STATEMENT> öğesinde kullanılmayan parametreler, XMLA'da bir hata yanıtı
alır.
IMPORTANT
Kullanılan ancak <Parameters> öğesinde tanımlanmayan parametreler, XMLA'da bir hata yanıtı alır.
Ayrıca bkz.
FILTER
SUMMARIZECOLUMNS
TREATAS
VAR
DAX parametrelerini adlandırma kuralları
8.05.2020 • 2 minutes to read
İşlevlerin kullanımını ve anlaşılmasını kolaylaştırmak için DAX başvurusundaki parametre adları standart hale
getirilmiştir.
Parametre adları
PA RA M ET RE A Ç IK L A M A
değer İfadenin diğer tüm işlemlerden önce tam olarak bir kez
değerlendirileceği tek bir skaler değer döndüren DAX ifadesi.