Download as pdf or txt
Download as pdf or txt
You are on page 1of 548

Contents

Veri Çözümleme İfadeleri (DAX) Başvurusu


Öğrenin
DAX'a Genel Bakış
Videolar
DAX işlevleri
DAX işlevi başvurusu
Yeni DAX işlevleri
Tarih ve saat işlevleri
Tarih ve saat işlevlerine genel bakış
CALENDAR
CALENDARAUTO
DATE
DATEDIFF
DATEVALUE
DAY
EDATE
EOMONTH
HOUR
MINUTE
MONTH
NOW
QUARTER
SECOND
TIME
TIMEVALUE
TODAY
UTCNOW
UTCTODAY
WEEKDAY
WEEKNUM
YEAR
YEARFRAC
Akıllı zaman gösterimi işlevleri
Akıllı zaman gösterimi işlevlerine genel bakış
CLOSINGBALANCEMONTH
CLOSINGBALANCEQUARTER
CLOSINGBALANCEYEAR
DATEADD
DATESBETWEEN
DATESINPERIOD
DATESMTD
DATESQTD
DATESYTD
ENDOFMONTH
ENDOFQUARTER
ENDOFYEAR
FIRSTDATE
FIRSTNONBLANK
FIRSTNONBLANKVALUE
LASTDATE
LASTNONBLANK
LASTNONBLANKVALUE
NEXTDAY
NEXTMONTH
NEXTQUARTER
NEXTYEAR
OPENINGBALANCEMONTH
OPENINGBALANCEQUARTER
OPENINGBALANCEYEAR
PARALLELPERIOD
PREVIOUSDAY
PREVIOUSMONTH
PREVIOUSQUARTER
PREVIOUSYEAR
SAMEPERIODLASTYEAR
STARTOFMONTH
STARTOFQUARTER
STARTOFYEAR
TOTALMTD
TOTALQTD
TOTALYTD
Filtre işlevleri
Filtre işlevlerine genel bakış
ADDMISSINGITEMS
ALL
ALLCROSSFILTERED
ALLEXCEPT
ALLNOBLANKROW
ALLSELECTED
HESAPLA
CALCULATETABLE
CROSSFILTER
DISTINCT (sütun)
DISTINCT (tablo)
EARLIER
EARLIEST
FILTER
FILTERS
HASONEFILTER
HASONEVALUE
ISCROSSFILTERED
ISFILTERED
KEEPFILTERS
RELATED
RELATEDTABLE
REMOVEFILTERS
SELECTEDVALUE
SUBSTITUTEWITHINDEX
USERELATIONSHIP
VALUES
Bilgi işlevleri
Bilgi işlevlerine genel bakış
CONTAINS
CUSTOMDATA
IN İşleci/CONTAINSROW işlevi
ISBLANK
ISERROR
ISEVEN
ISINSCOPE
ISLOGICAL
ISNONTEXT
ISNUMBER
ISODD
ISONORAFTER
ISTEXT
LOOKUPVALUE
USERNAME
USEROBJECTID
USERPRINCIPALNAME
Mantıksal işlevler
Mantıksal işlevlere genel bakış
AND
COALESCE
\FALSE
IF
IF.EAGER
IFERROR
IN
NOT
OR
SWITCH
\TRUE
Matematik ve trigonometri işlevleri
Matematik ve trigonometri işlevlerine genel bakış
ABS
ACOS
ACOSH
ACOT
ACOTH
ASIN
ASINH
ATAN
ATANH
CEILING
COMBIN
COMBINA
COS
COSH
CURRENCY
DEGREES
DIVIDE
EVEN
EXP
FACT
FLOOR
GCD
INT
ISO.CEILING
LCM
LN
LOG
LOG10
MOD
MROUND
ODD
PI
POWER
PRODUCT
PRODUCTX
QUOTIENT
RADIANS
RAND
RANDBETWEEN
ROUND
ROUNDDOWN
ROUNDUP
SIGN
SQRT
SUM
SUMX
TRUNC
Diğer işlevler
Diğer işlevlere genel bakış
CONVERT
DATATABLE
HATA
EXCEPT
GENERATESERIES
GROUPBY
INTERSECT
ISEMPTY
ISSELECTEDMEASURE
NATURALINNERJOIN
NATURALLEFTOUTERJOIN
SELECTEDMEASURE
SELECTEDMEASUREFORMATSTRING
SELECTEDMEASURENAME
SUMMARIZECOLUMNS
Tablo Oluşturucu
TREATAS
UNION
Üst ve alt öğe işlevleri
Üst ve alt öğe işlevlerin genel bakış
Üst-Alt Öğe Hiyerarşileri ile ilgili işlevleri anlama
PATH
PATHCONTAINS
PATHITEM
PATHITEMREVERSE
PATHLENGTH
İstatistiksel işlevler
İstatistiksel işlevlere genel bakış
ADDCOLUMNS
APPROXIMATEDISTINCTCOUNT
AVERAGE
AVERAGEA
AVERAGEX
BETA.DIST
BETA.INV
CHISQ.DIST
CHISQ.DIST.RT
CHISQ.INV
CHISQ.INV.RT
CONFIDENCE.NORM
CONFIDENCE.T
COT
COTH
COUNT
COUNTA
COUNTAX
COUNTBLANK
COUNTROWS
COUNTX
CROSSJOIN
DISTINCTCOUNT
EXPON.DIST
GENERATE
GENERATEALL
GEOMEAN
GEOMEANX
MAX
MAXA
MAXX
MEDIAN
MEDIANX
MIN
MINA
MINX
NORM.DIST
NORM.INV
NORM.S.DIST
NORM.S.INV
PERCENTILE.EXC
PERCENTILE.INC
PERCENTILEX.EXC
PERCENTILEX.INC
PERMUT
POISSON.DIST
RANK.EQ
RANKX
ROW
SAMPLE
SELECTCOLUMNS
SIN
SINH
STDEV.S
STDEV.P
STDEVX.S
STDEVX.P
SQRTPI
SUMMARIZE
T.DIST
T.DIST.2T
T.DIST.RT
T.INV
T.INV.2T
TAN
TANH
TOPN
VAR.S
VAR.P
VARX.S
VARX.P
XIRR
XNPV
Metin işlevleri
Metin işlevlerine genel bakış
BLANK
CODE
COMBINEVALUES
CONCATENATE
CONCATENATEX
EXACT
FIND
FIXED
FORMAT
FORMAT
FORMAT için önceden tanımlanmış sayısal biçimler
FORMAT için özel sayısal biçimler
FORMAT için önceden tanımlanmış tarih ve saat biçimleri
FORMAT için özel tarih ve saat biçimleri
LEFT
LEN
LOWER
MID
REPLACE
REPT
RIGHT
SEARCH
SUBSTITUTE
TRIM
UNICHAR
UNICODE
UPPER
VALUE
DAX deyimleri
Deyimlere genel bakış
DEFINE
EVALUATE
SİPARİŞ VEREN
VAR
DAX söz dizimi
DAX işleçleri
DAX sorguları
DAX parametrelerini adlandırma
DAX'a genel bakış
12.05.2020 • 54 minutes to read

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:

Total Sales:=SUM([Sales Amount])

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] & " Q" & [Calendar Quarter]

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

=TODAY() Hesaplanmış sütunun her satırına bugünün tarihini ekler.


=3 Hesaplanmış sütunun her satırına 3 değerini ekler.

=[Column1] + [Column2] [Column1] ve [Column2] sütunlarının aynı satırındaki değerleri


toplar ve sonuçları aynı satırın hesaplanmış sütununa
yerleştirir.

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:

Days in Current Quarter = COUNTROWS( DATESBETWEEN( 'Date'[Date], STARTOFQUARTER( LASTDATE('Date'[Date])),


ENDOFQUARTER('Date'[Date])))

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

Days in Current Quarter Ölçünün adı.

= Eşittir işareti (=) formülü başlatır.

COUNTROWS COUNTROWS, Date (Tarih) tablosundaki satırları sayar


F O RM ÜL Ö ĞESI A Ç IK L A M A

() Açılan ve kapanan ayraçlar, bağımsız değişkenleri belirtir.

DATESBETWEEN DATESBETWEEN işlevi, Date (Tarih) tablosundaki Date (Tarih)


sütununda bulunan her değer ile son tarih arasındaki gün
sayısını döndürür.

'Date' Date (Tarih) tablosunu belirtir. Tablolar tek tırnak içine alınır.

[Date] Date (Tarih) tablosundaki Date (Tarih) sütununu belirtir.


Sütunlar köşeli ayraç içine alınır.

STARTOFQUARTER STARTOFQUARTER işlevi, çeyreğin başlangıç tarihini döndürür.

LASTDATE LASTDATE işlevi, çeyreğin son tarihini döndürür.

'Date' Date (Tarih) tablosunu belirtir.

[Date] Date (Tarih) tablosundaki Date (Tarih) sütununu belirtir.

ENDOFQUARTER ENDOFQUARTER işlevi

'Date' Date (Tarih) tablosunu belirtir.

[Date] Date (Tarih) tablosundaki Date (Tarih) sütununu belirtir.

Formülde Otomatik Tamamlama özelliğini kullanma


Hem model tasarımcısındaki formül çubuğunda hem de Rol Yöneticisi iletişim kutusundaki formül Satır Filtreleri
penceresinde Otomatik Tamamlama özelliği sunulur. Otomatik Tamamlama özelliği, formüldeki her öğeyle ilgili
seçenekler sunarak geçerli bir söz dizimi oluşturmanıza yardımcı olur.
Otomatik Tamamlama özelliğini mevcut bir formülün ortasındaki iç içe yerleştirilmiş işlevler için de
kullanabilirsiniz. Açılan listedeki değerleri görüntülemek için ekleme noktasının hemen önündeki metin
kullanılır ve ekleme noktasının sonrasındaki metin değiştirilmez.
Otomatik Tamamlama özelliği, işlevlerin sonuna kapatma ayraçlarını eklemez ve ayraçları otomatik olarak
eşleştirmez. Formülü kaydedebilmek veya kullanabilmek için her işlevin doğru söz dizimine sahip
olduğundan emin olmanız gerekir.
Bir formülde birden çok işlev kullanma
İşlevleri iç içe yerleştirerek bir işlevin sonucunu başka bir işlevin bağımsız değişkeni olarak kullanabilirsiniz.
Hesaplanmış sütunlarda en fazla 64 işlevi iç içe yerleştirebilirsiniz. Ancak işlevleri iç içe yerleştirmek, formül
oluşturma veya sorun giderme adımlarını zorlaştırabilir. Birçok işlev yalnızca iç içe yerleştirilmiş işlev olarak
kullanılacak şekilde tasarlanmıştır. Bu işlevlerin döndürdüğü tablolar, doğrudan bir sonuç olarak kaydedilemez.
Döndürülen sonucun bir tablo işlevinin girişi olarak sağlanması gerekir. Örneğin SUMX, AVERAGEX ve MINX
işlevleri ilk bağımsız değişken olarak bir tabloya ihtiyaç duyar.

İş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:

-1,79E +308 ile -2,23E -308 arasındaki


negatif sayılar

Sıfır

2,23E -308 ile 1,79E + 308 arasındaki


pozitif sayılar

Ancak anlamlı basamak sayısı 17 ondalık


basamakla sınırlıdır.

Boole Boole True veya False değeri.

Metin Dize Unicode karakter veri dizesi. Metin


biçiminde gösterilmiş dizeler, sayılar
veya tarihler olabilir.

Tarih Tarih/saat Kabul edilen tarih saat gösteriminde


tarihler ve saatler.

1 Mart 1900 sonrasındaki tüm tarihler


geçerlidir.

Para Birimi Para Birimi Para birimi veri türü, -


922.337.203.685.477,5808 ile
922.337.203.685.477,5807 arasındaki
değerlere ve sabit duyarlıktaki dört
ondalık basamağa izin verir.

YOK Boş DAX'ta boş, SQL'deki null değerleri


temsil eden ve bunların yerini alan veri
türüdür. BLANK işlevini kullanarak boş
değer oluşturabilir ve ISBLANK
mantıksal işlevi ile boş değer olup
olmadığını test edebilirsiniz.

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])

Bu formülle ilgili ayrıntılı bir örnek için bkz. EARLIER.


Özetlemek gerekirse, EARLIER işlevi, geçerli işlemden önce gerçekleştirilen işlemin satır bağlamını depolar. İşlev her
zaman iki bağlam kümesini bellek içinde depolar. Bu kümelerden ilki, formülün iç döngüsü için geçerli satırı temsil
ederken diğer bağlam kümesi, formülün dış döngüsü için geçerli satırı temsil eder. DAX, değerleri iki döngü
arasında otomatik olarak besleyerek karmaşık toplama işlemleri gerçekleştirmenizi sağlar.
Sorgu bağlamı
Sorgu bağlamı, bir formül için örtük olarak getirilen veri alt kümesini tanımlar. Kullanıcı bir ölçüyü veya başka bir
değer alanını PivotTable'a veya tablosal model kullanan rapora eklediğinde altyapı, satır ve sütun üst bilgilerini,
dilimleyicileri ve rapor filtrelerini inceleyerek bağlamı belirler. Ardından veri kaynağında gerekli sorgular
çalıştırılarak doğru veri alt kümesi alınır, formülde tanımlanan hesaplamalar yapılır ve PivotTable'daki veya
rapordaki hücreler doldurulur. Alınan veri kümesi, her hücrenin sorgu bağlamı olur.
Formülü yerleştirdiğiniz yere göre bağlam değiştiğinden formülün sonuçları da değişiklik gösterebilir.
Örneğin Sales (Satış) tablosunun Profit (Kar) sütunundaki değerleri toplayan bir formül oluşturduğunuzu
düşünün: =SUM('Sales'[Profit]) . Bu formülü Sales (Satış) tablosunun içindeki bir hesaplanmış sütunda
kullanırsanız bağlamı, Sales tablosunun veri kümesinin tamamı olacağından formül, tablonun tamamı için aynı
sonucu verecektir. Sonuçlarda tüm bölgelerin, tüm ürünlerin, tüm yılların, kısacası tüm değişkenlerin kar değerleri
döndürülecektir.
Ancak kullanıcılar genellikle aynı sonucu yüzlerce kez görmek istemez. Bunun yerine belirli bir yıla, belirli bir ülkeye,
belirli bir ürüne veya bunların birleşimine ait olan kar oranını görmek ve ardından genel toplam değerine ulaşmak
isterler.
Bir PivotTable'da bağlamı değiştirmek için sütun ve satır üst bilgileri veya Dilimleyiciler ekleyip kaldırabilirsiniz.
Kullanıcılar PivotTable'a sütun veya satır üst bilgisi eklediğinde ölçünün değerlendirildiği sorgu bağlamını da
değiştirmiş olur. Dilimleme ve filtreleme işlemleri de bağlamı etkiler. Bu nedenle ölçümde kullanılan formül, her
hücre için farklı bir sorgu bağlamında değerlendirilir.
Filtre bağlamı
Filtre bağlamı, her sütundaki veya ilişkilendirilmiş tablodan alınan değerler arasındaki izin verilen değerlerin
oluşturduğu kümedir. Filtreler, tasarımcıda veya sunum katmanında (raporlar ve PivotTable'lar) sütuna
uygulanabilir. Filtreler ayrıca formül içinde filtre ifadeleriyle de açıkça tanımlanabilir.
Formülde bağımsız değişkenler kullanarak bir sütunda veya tabloda izin verilen değer kümesiyle ilgili filtre
kısıtlamalarını belirttiğinizde filtre bağlamı eklenmiş olur. Filtre bağlamı, satır bağlamı veya sorgu bağlamı gibi
diğer bağlamların üzerine uygulanır.
Tablosal modellerde filtre bağlamı oluşturmak için kullanılabilecek birçok yöntem vardır. Power BI raporları gibi
modeli tüketebilecek istemci bağlamında kullanıcılar, dilimleyici veya satır ve sütun üst bilgilerine rapor filtresi
ekleyerek filtre oluşturabilir. Ayrıca filtre ifadelerini doğrudan filtre içinde belirterek ilişkili değerleri belirleyebilir,
giriş olarak kullanılan tabloları filtreleyebilir veya hesaplamalarda kullanılan değerler için dinamik olarak bağlam
oluşturabilirsiniz. İsterseniz belirli sütunlardaki filtreleri tamamen veya kısmen silebilirsiniz. Bu seçenek, genel
toplam hesaplayan formüller oluşturmak için kullanışlıdır.
Formül içinde filtre oluşturma hakkında daha fazla bilgi için bkz. FILTER İşlevi (DAX).
Filtrelerin genel toplam oluşturacak şekilde nasıl silineceğini gösteren örnek için bkz. ALL İşlevi (DAX).
Formüllerde belirli filtreleri silmeyi ve uygulamayı gösteren örnekler için bkz. ALLEXCEPT.
Formül içinde bağlamı belirleme
Oluşturduğunuz DAX formülleri, söz dizimi denetiminden geçirildikten sonra formüldeki sütun ve tablo adlarının
geçerli bağlamda bulunup bulunmadığı test edilir. Formülde belirtilen sütun veya tablo adının bulunamaması
durumunda bir hata döndürülür.
Doğrulama (ve yeniden hesaplama işlemleri) için bağlam, yukarıdaki bölümlerde anlatıldığı gibi modeldeki
kullanılabilir tablolar, tablolar arasındaki ilişkiler ve uygulanmış olan filtreler kullanılarak belirlenir.
Örneğin, yeni ve başka bir tabloyla ilişkili olmayan bir tabloya veri aktardıysanız (ve filtre uygulamadıysanız),
geçerli bağlam tablodaki sütunların tamamı olur. Tablonun, ilişkiler yoluyla diğer tablolara bağlantısı varsa geçerli
bağlama ilişkili tablolar da dahil edilir. Tabloya, Dilimleyici içeren ve muhtemelen bazı rapor filtreleri uygulanmış bir
rapordan sütun eklerseniz, formülün bağlamı, raporun her hücresindeki verilerin alt kümesi olur.
Bağlam önemli bir kavramdır ve bazen formüllerle ilgili sorunları çözmeyi zorlaştırabilir. Bağlamın nasıl çalıştığını
görmeniz için basit formüllerle ve ilişkilerle başlamanız önerilir. Aşağıdaki bölümde formüllerin dinamik olarak
sonuç döndürmek için kullandığı farklı bağlam türlerine ilişkin örnekler verilmiştir.

İş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.

Tablolar ve sütunlarla çalışma


Tablosal veri modellerindeki tablolar, Excel tablolarına benzer ancak verilerle ve formüllerle çalışma şekli farklıdır:
Formüller yalnızca tablolar ve sütunlarla çalışır; tek hücrelerle, aralık başvurularıyla veya dizilerle çalışmaz.
Formüller, ilişkileri kullanarak ilişkili tablolardaki değerleri alabilir. Getirilen değerler her zaman geçerli satır
değeriyle ilişkilidir.
Excel çalışma sayfalarında olduğu gibi düzensiz verilere sahip olamazsınız. Tablodaki her satırda aynı sayıda
sütun olması gerekir. Ancak bazı sütunlarda boş değerler olabilir. Excel veri tabloları ve tablosal model veri
tabloları birbirinin yerine kullanılamaz.
Veri türleri sütunlara atandığından bir sütundaki tüm değerlerin aynı türde olması gerekir.
Formüllerde tablolara ve sütunlara başvurma
Bir tabloya veya sütuna başvurmak için adını kullanabilirsiniz. Örneğin, aşağıdaki formülde, iki tablodaki sütunlara
tam adını kullanarak başvurma adımları gösterilmiştir:

=SUM('New Sales'[Amount]) + SUM('Past Sales'[Amount])

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

COALESCE Mart 2020

FIRSTNONBLANKVALUE Şub. 2020

LASTNONBLANKVALUE Şub. 2020

CONVERT Eylül 2019

REMOVEFILTERS Eylül 2019

SELECTEDMEASUREFORMATSTRING Mayıs 2019

ALLCROSSFILTERED Nisan 2019

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.

DATE Belirtilen tarihi, tarih saat biçiminde döndürür.

DATEDIFF İki tarih arasındaki çapraz aralık sınırları sayısını döndürür.

DATEVALUE Metin biçimindeki tarihi, tarih saat biçimindeki bir tarihe


dönüştürür.

DAY Ayın gününü (1 ile 31 arasında bir sayı) döndürür.

EDATE Başlangıç tarihinden belirtilen sayıda ay önce veya sonra


gelen tarihi döndürür.

EOMONTH 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.

HOUR 0 (12:00 A.M.) ile 23 (11:00 P.M.) arasındaki bir sayı olarak
saati döndürür.

MINUTE Verilen tarih ve saat değerinin dakikasını 0 ile 59 arasında


bir sayı olarak döndürür.

MONTH Ayı (1 (Ocak) ile 12 (Aralık) arasında bir sayı) döndürür.

NOW Tarih saat biçiminde geçerli tarihi ve saati döndürür.

QUARTER 1 ile 4 arasında bir sayı olarak çeyreği döndürür.

SECOND Bir saat değerinin saniyesini 0 ile 59 arasında bir sayı olarak
döndürür.

TIME Sayı olarak verilmiş saat, dakika ve saniyeleri, tarih saat


biçiminde bir saate dönüştürür.
İŞ L EV A Ç IK L A M A

TIMEVALUE Metin biçimindeki saati, tarih saat biçimindeki bir saate


dönüştürür.

TODAY Geçerli tarihi döndürür.

WEEKDAY Bir tarihte haftanın gününü tanımlayan, 1 ile 7 arasında bir


sayı döndürür.

WEEKNUM dönüş_türü değerine göre verilen tarih ve yıl için hafta


numarasını döndürür.

YEAR Tarihin yıl değerini 1900-9999 aralığındaki dört basamaklı


bir tamsayı 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

fiscal_year_end_month 1 ile 12 arasında bir tamsayı döndüren bir DAX ifadesi.


Atlanması durumunda varsa geçerli kullanıcının takvim tablosu
şablonunda belirtilen değer kullanılır, yoksa 12 değeri kullanılır.

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

Belirtilen tarihi, tarih saat biçiminde döndürür.

Sözdizimi
DATE(<year>, <month>, <day>)

Parametreler
T ERIM TA N IM

yıl Yılı gösteren bir sayı.

yıl bağımsız değişkeninin değeri bir ile dört basamak arasında


bir değer içerebilir. yıl bağımsız değişkeni, bilgisayarınız
tarafından kullanılan tarih sistemine göre yorumlanır.

1 Mart 1900'den sonraki tarihler desteklenir.

Ondalık basamağa sahip bir sayı girerseniz yuvarlama yapılır.

9999'dan büyük veya sıfırdan küçük (negatif) değerler için


işlev bir #VALUE! hatası döndürür.

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.

ay Aşağıdaki kurallara göre ayı veya hesaplamayı temsil eden bir


sayı:

ay değeri 1 ile 12 arasındaysa yılın ayı olarak kabul edilir. 1


değeri Ocak ayını, 2 değeri Şubat ayını temsil eder ve bu
düzende ilerleyerek Aralık ayını temsil eden 12 değerine kadar
gider.

12'den büyük bir tamsayı girerseniz şu hesaplama yapılır: ay


değeri yıl değerine eklenerek tarih hesaplanır. Örneğin DATE(
2008, 18, 1) işlevi, 1 Haziran 2009'a eşdeğer bir tarih saat
değeri döndürür. Bunun nedeni, 2008 yılının başlangıcına 18
eklenmesi ve bunun da Haziran 2009'a denk gelmesidir.
Aşağıdaki örneklere bakın.

Negatif bir tamsayı girerseniz şu hesaplama yapılır: ay değeri


yıl değerinden çıkarılarak tarih hesaplanır. Örneğin DATE(
2008, -6, 15) işlevi 15 Haziran 2007'ye eşdeğer bir tarih saat
değeri döndürür. Bunun nedeni, 2008 yılının başlangıcından 6
ayın çıkarılması ve bunun da Haziran 2007'ye denk gelmesidir.
Aşağıdaki örneklere bakın.
T ERIM TA N IM

gün Aşağıdaki kurallara göre günü veya hesaplamayı temsil eden


bir sayı:

gün değeri 1 ile belirtilen ayın son günü arasındaysa ayın


günü olarak kabul edilir.

Belirtilen ayın son gününden büyük bir tamsayı girerseniz şu


hesaplama yapılır: gün değeri ay değerine eklenerek tarih
hesaplanır. Örneğin DATE( 2008, 3, 32) formülünde DATE
işlevi 1 Nisan 2008'e eşdeğer bir tarih saat değeri döndürür.
Bunun nedeni, Mart ayının başlangıcına 32 gün eklenmesi ve
bunun da 1 Nisan'a denk gelmesidir.

Negatif bir tamsayı girerseniz şu hesaplama yapılır: gün değeri


ay değerinden çıkarılarak tarih hesaplanır. Örneğin
DATE( 2008, 5, -15) formülünde DATE işlevi 15 Nisan
2008'e eşdeğer bir tarih saat değeri döndürür. Bunun
nedeni, 2008 Mayıs ayının başlangıcından 15 gün çıkarılması
ve bunun da Nisan 2008'e denk gelmesidir.

gün değeri ondalık bölüm içeriyorsa en yakın tamsayı


değerine yuvarlanı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.

Örnek: Basit bir tarih döndürme


Açıklama
Aşağıdaki formül 8 Temmuz 2009 tarihini döndürür:
Kod

=DATE(2009,7,8)

Örnek: 1899'dan önceki yıllar


Açıklama
yıl bağımsız değişkenine girdiğiniz değer 0 (sıfır) ile 1899 (dahil) arasındaysa, yılı hesaplamak için bu değere 1900
eklenir. Aşağıdaki formül 2 Ocak 1908 tarihini döndürür: (1900+08).
Kod

=DATE(08,1,2)

Örnek: 1899'dan önceki yıllar


Açıklama
yıl bağımsız değişkenine girdiğiniz değer 0 (sıfır) ile 1899 (dahil) arasındaysa, yılı hesaplamak için bu değere 1900
eklenir. Aşağıdaki formül 2 Ocak 3700 tarihini döndürür: (1900+1800).
Kod

=DATE(1800,1,2)

Örnek: 1899'dan sonraki yıllar


Açıklama
yıl değeri 1900 ile 9999 (dahil) arasındaysa yıl değeri olarak kullanılır. Aşağıdaki formül 2 Ocak 2008 tarihini
döndürür:
Kod

=DATE(2008,1,2)

Örnek: Aylarla çalışma


Açıklama
ay değeri 12'den büyükse ay içinde belirtilen sayı, belirtilen yılın ilk ayına eklenir. Aşağıdaki formül 2 Şubat 2009
tarihini döndürür:
Kod

=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)

Örnek: Günlerle çalışma


Açıklama
gün değeri belirtilen aydaki gün sayısından yüksekse gün içinde belirtilen sayı, ayın ilk gününe eklenir. Aşağıdaki
formül 4 Şubat 2008 tarihini döndürür:
Kod
=DATE(2008,1,35)

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

İki tarih arasındaki çapraz aralık sınırları sayısını döndürür.

Söz dizimi
DATEDIFF(<start_date>, <end_date>, <interval>)

Parametreler
T ERIM TA N IM

başlangıç_tarihi Skaler bir tarih saat değeri.

bitiş_tarihi Skaler bir tarih saat değeri Dönüş değeri.

aralık Tarihler karşılaştırılırken kullanılacak aralık. Değer


aşağıdakilerden biri olabilir:

- 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

Aşağıdakilerin hepsi 1 döndürür:


DATEDIFF(MIN( Calendar[Date] ), MAX( Calendar[Date]), SECOND )

DATEDIFF(MIN( Calendar[Date] ), MAX( Calendar[Date]), MINUTE )

DATEDIFF(MIN( Calendar[Date] ), MAX( Calendar[Date]), HOUR )

DATEDIFF(MIN( Calendar[Date] ), MAX( Calendar[Date]), DAY )

DATEDIFF(MIN( Calendar[Date] ), MAX( Calendar[Date]), WEEK )

DATEDIFF(MIN( Calendar[Date] ), MAX( Calendar[Date]), MONTH )

DATEDIFF(MIN( Calendar[Date] ), MAX( Calendar[Date]), QUARTER )

DATEDIFF(MIN( Calendar[Date] ), MAX( Calendar[Date]), YEAR )


DATEVALUE
9.05.2020 • 2 minutes to read

Metin biçimindeki tarihi, tarih saat biçimindeki bir tarihe dönüştürür.

Sözdizimi
DATEVALUE(date_text)

Parametreler
T ERIM TA N IM

tarih_metni Tarihi temsil eden bir metin.

Özellik Değeri/Döndürülen Değer


Tarih saat biçiminde tarih.

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

Ayın gününü (1 ile 31 arasında bir sayı) döndürür.

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.

Örnek: Tarih sütunundan günü alma


Aşağıdaki formül, [Birthdate] sütunundaki tarihten gün değerini döndürür.

=DAY([Birthdate])

Örnek - Dize tarihinden günü alma


Aşağıdaki formül, kabul edilen metin biçiminde sağlanan tarihleri kullanarak 4. günü döndürür.

=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

başlangıç_tarihi Başlangıç tarihini gösteren tarih saat veya metin biçiminde


tarih.

aylar ba şlangıç_tarihi öncesinde veya sonrasında olan ay sayısını


gösteren bir tamsayı.

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

başlangıç_tarihi Tarih saat biçiminde veya kabul edilen tarih metin


gösteriminde başlangıç tarihi.

aylar ba şlangıç_tarihi öncesinde veya sonrasında olan ay sayısını


gösteren bir sayı. Not: Tamsayı olmayan bir sayı girerseniz sayı
en yakın tamsayıya doğru yukarı veya aşağı yuvarlanır.

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.

=HOUR("March 3, 2008 3:00 PM")

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.

=MINUTE("March 23, 2008 1:45 PM")

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

Ayı (1 (Ocak) ile 12 (Aralık) arasında bir sayı) döndürür.

Söz dizimi
MONTH(<datetime>)

Parametreler
T ERIM TA N IM

tarih Tarih saat veya metin biçiminde tarih.

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.

=MONTH("March 3, 2008 3:45 PM")

Ö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

Tarih saat biçiminde geçerli tarihi ve saati döndürür.


NOW işlevi, çalışma sayfasında geçerli tarih ve saati görüntülemeniz gerektiğinde veya geçerli tarihi temel alan bir
değer hesaplayıp çalışma sayfasını her açtığınızda bu değerin güncelleştirilmesini istediğiniz durumlarda yararlıdır.

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

date Bir tarih.

Döndürülen değer
1 ile 4 arasında bir tamsayı.

Açıklamalar
İlgili DAX işlevlerine bakın: YEAR, MONTH, DAY.

Giriş değeri BOŞ olursa, çıkış değeri de BOŞ olur.

Örnek
Aşağıdaki DAX işlevi:

EVALUATE { QUARTER(DATE(2019, 2, 1)), QUARTER(DATE(2018, 12, 31)) }

Ş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:

FA C T IN T ERN ET SA L ES[ O RDERDAT E] [ Q UA RT ER]

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.

=SECOND("March 3, 2008 12:00:03")

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

saat Saati temsil eden 0 ile 23 arasında bir sayı.

23'ten büyük değerler 24'e bölünür ve kalan değer saat değeri


olarak kabul edilir.

dakika Dakikayı temsil eden 0 ile 59 arasında bir sayı.

59'dan büyük değerler saat ve dakikaya dönüştürülür.

saniye Saniyeyi temsil eden 0 ile 59 arasında bir sayı.

59'dan büyük değerler saat, dakika ve saniyeye dönüştürülür.

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

Metin biçimindeki saati, tarih saat biçimindeki bir saate dönüştürür.

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

Geçerli tarihi döndürür.

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

Geçerli tarih ve saati (UTC) döndürür.

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:

EVALUATE { FORMAT(UTCNOW(), "General Date") }

Ş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

Geçerli tarihi (UTC) döndürür.

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:

EVALUATE { FORMAT(UTCTODAY(), "General Date") }

Ş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

date Tarih saat biçiminde tarih.

Tarihler, DATE işlevi kullanılarak veya tarih sonucu veren


ifadeler ile ya da diğer formüllerin sonucu olarak girilmelidir.

dönüş_türü Döndürülen değeri belirleyen bir sayı:

Dönüş türü: 1 , hafta Pazar (1) günü başlar ve Cumartesi (7)


günü biter. 1 ile 7 arasında bir sayı kullanılır.

Dönüş türü: 2 , hafta Pazartesi (1) günü başlar ve Pazar (7)


günü biter.

Dönüş türü: 3 , hafta Pazartesi (0) günü başlar ve Pazar (6)


günü biter. 1 ile 7 arasında bir sayı kullanılır.

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

date Tarih saat biçiminde tarih.

dönüş_türü Dönüş değerini belirleyen sayı: hafta Pazar günü başlıyorsa 1


veya Pazartesi günü başlıyorsa 2 kullanın. Varsayılan değer
1'dir.

Dönüş türü: 1 , hafta Pazar günü başlar. Haftanın günleri 1 ile 7


arasında numaralandırılır.

Dönüş türü: 2 , hafta Pazartesi günü başlar. Haftanın günleri 1


ile 7 arasında numaralandırılır.

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.

=WEEKNUM("Feb 14, 2010", 2)

Ö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

tarih Bulmak istediğiniz yılı içeren tarih saat veya metin


biçimindeki tarih.

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")

Örnek - İfade sonucu olarak tarih


Açıklama
Aşağıdaki örnek bugünün tarihinin yıl değerini döndürür.
=YEAR(TODAY())

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

başlangıç_tarihi Tarih saat biçiminde başlangıç tarihi.

bitiş_tarihi Tarih saat biçiminde bitiş tarihi.

temel (İsteğe bağlı) Kullanılacak gün sayısı temelinin türü. Tüm


bağımsız değişkenler tamsayı haline getirilir.

Temel - Açıklama

0 - ABD (NASD) 30/360

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:

=YEARFRAC("Jan 1 2007","Mar 1 2007")

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

CLOSINGBALANCEMONTH İfadeyi geçerli bağlamdaki ayın son tarihinde değerlendirir.

CLOSINGBALANCEQUARTER Geçerli bağlamda üç aylık dönemin son tarihinde ifadeyi


değerlendirir.

CLOSINGBALANCEYEAR Geçerli bağlamda yılın son tarihinde ifadeyi değerlendirir.

DATEADD 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.

DATESBETWEEN 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.

DATESINPERIOD 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.

DATESMTD Geçerli bağlamda ay başından bugüne kadar olan tarihleri


içeren sütuna sahip olan bir tablo döndürür.

DATESQTD 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.

DATESYTD 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.

ENDOFMONTH Belirtilen tarih sütunu için geçerli bağlamdaki ayın son


tarihini döndürür.

ENDOFQUARTER Belirtilen tarih sütunu için geçerli bağlamdaki üç aylık


dönemin son tarihini döndürür.

ENDOFYEAR Belirtilen tarih sütunu için geçerli bağlamdaki yılın son


tarihini döndürür.

FIRSTDATE Belirtilen tarih sütunu için geçerli bağlamdaki ilk tarihi


döndürür.
İŞ L EV A Ç IK L A M A

FIRSTNONBLANK İfadenin boş olmaması kaydıyla geçerli bağlama göre


filtrelenmiş olan sütun içindeki ilk değeri döndürür.

LASTDATE Belirtilen tarih sütunu için geçerli bağlamdaki son tarihi


döndürür.

LASTNONBLANK İfadenin boş olmaması kaydıyla geçerli bağlama göre


filtrelenmiş olan sütun içindeki son değeri döndürür.

NEXTDAY 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.

NEXTMONTH 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.

NEXTQUARTER 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.

NEXTYEAR 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.

OPENINGBALANCEMONTH Geçerli bağlamda ayın ilk tarihinde ifadeyi değerlendirir.

OPENINGBALANCEQUARTER Geçerli bağlamda üç aylık dönemin ilk tarihinde ifadeyi


değerlendirir.

OPENINGBALANCEYEAR Geçerli bağlamda yılın ilk tarihinde ifadeyi değerlendirir.

PARALLELPERIOD 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.

PREVIOUSDAY 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.

PREVIOUSMONTH 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.

PREVIOUSQUARTER 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.

PREVIOUSYEAR 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.
İŞ L EV A Ç IK L A M A

SAMEPERIODLASTYEAR 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.

STARTOFMONTH Belirtilen tarih sütunu için geçerli bağlamdaki ayın ilk tarihini
döndürür.

STARTOFQUARTER Belirtilen tarih sütunu için geçerli bağlamdaki üç aylık


dönemin 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.

TOTALMTD Geçerli bağlamda ay başından bugüne kadar olan tarihler


için ifade değerini değerlendirir.

TOTALQTD Geçerli bağlamda üç aylık dönemden bugüne kadar olan


tarihler için ifade değerini değerlendirir.

TOTALYTD Geçerli bağlamda ifadenin yıl başından bugüne kadar olan


değerini değerlendirir.
CLOSINGBALANCEMONTH
8.05.2020 • 2 minutes to read

ifade değerini geçerli bağlamdaki ayın son tarihinde değerlendirir.

Sözdizimi
CLOSINGBALANCEMONTH(<expression>,<dates>[,<filter>])

Parametreler
PA RA M ET RE TA N IM

ifade Skaler değer döndüren bir ifade.

tarihler Tarihleri içeren sütun.

filtre (isteğe bağlı) Geçerli bağlama uygulanacak filtreyi belirten bir


ifade.

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).

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 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

Geçerli bağlamda üç aylık dönemin son tarihinde ifadeyi değerlendirir.

Sözdizimi
CLOSINGBALANCEQUARTER(<expression>,<dates>[,<filter>])

Parametreler

Parametre Tanım

ifade Skaler değer döndüren bir ifade.

tarihler Tarihleri içeren sütun.

filtre (isteğe bağlı) Geçerli bağlama uygulanacak filtreyi belirten bir


ifade.

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).

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 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

Geçerli bağlamda yılın son tarihinde ifadeyi değerlendirir.

Söz dizimi
CLOSINGBALANCEYEAR(<expression>,<dates>[,<filter>][,<year_end_date>])

Parametreler

Parametre Tanım

ifade Skaler değer döndüren bir ifade.

tarihler Tarihleri içeren sütun.

filtre (isteğe bağlı) Geçerli bağlama uygulanacak filtreyi belirten bir


ifade.

year_end_date (isteğe bağlı) Yılın bitiş tarihini tanımlayan tarih içeren


değişmez dize. Varsayılan değeri 31 Aralık şeklindedir.

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

tarihler Tarihleri içeren sütun.

number_of_intervals Tarihlere eklenecek veya çıkarılacak aralık sayısını belirten bir


tamsayı.

aralık Tarihlerin kaydırılacağı zaman aralığı. Zaman aralığı değeri


şunlardan biri olabilir: year , quarter , month , day

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.

Örnek - Bir tarih kümesini kaydırma


Açıklama
Aşağıdaki formül, geçerli bağlamdaki tarihlerden bir yıl önceki tarihleri hesaplar.

=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

tarihler Tarih/saat sütunu başvurusu.

başlangıç_tarihi Tarih ifadesi.

bitiş_tarihi Tarih ifadesi.

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.

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 "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

tarihler Tarihleri içeren sütun.

başlangıç_tarihi Tarih ifadesi.

aralık_sayısı Tarihlere eklenecek veya çıkarılacak aralık sayısını belirten bir


tamsayı.

aralık Tarihlerin kaydırılacağı zaman aralığı. Zaman aralığı değeri


şunlardan biri olabilir: year , quarter , month , day

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

tarihler Tarihleri içeren sütun.

Özellik Değeri/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).

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 "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

tarihler Tarihleri içeren sütun.

Özellik Değeri/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).

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 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

tarihler Tarihleri içeren sütun.

year_end_date (isteğe bağlı) Yılın bitiş tarihini tanımlayan tarih içeren


değişmez dize. Varsayılan değeri 31 Aralık şeklindedir.

Özellik Değeri/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).

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

tarihler Tarihleri içeren sütun.

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).

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 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

tarihler Tarihleri içeren sütun.

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).

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 üç 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

tarihler Tarihleri içeren sütun.

year_end_date (isteğe bağlı) Yılın bitiş tarihini tanımlayan tarih içeren


değişmez dize. Varsayılan değeri 31 Aralık şeklindedir.

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

Belirtilen tarih sütunu için geçerli bağlamdaki ilk tarihi döndürür.

Sözdizimi
FIRSTDATE(<dates>)

Parametreler

Terim Tanım

tarihler Tarihleri içeren sütun.

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

sütun Sütun ifadesi.

ifade Her bir sütun değeri için boş ifade değerlendirmesi yapılan
ifade.

Özellik Değeri/Döndürülen Değer


Hesaplanan ilk değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.

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

sütun Tek sütunlu tablo döndüren bir sütun veya ifade.

ifade Her bir <sütun> değeri için değerlendirilen ifade.

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:

DIM P RO DUC T [ C L A SS] [ F N B V]

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

Belirtilen tarih sütunu için geçerli bağlamdaki son tarihi döndürür.

Sözdizimi
LASTDATE(<dates>)

Parametreler
T ERIM TA N IM

tarihler Tarihleri içeren sütun.

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

sütun Sütun ifadesi.

ifade Her bir sütun değeri için boş ifade değerlendirmesi yapılan
ifade.

Özellik Değeri/Döndürülen Değer


Hesaplanan son değeri içeren tek bir sütun ve tek bir satıra sahip olan tablo.

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

sütun Tek sütunlu tablo döndüren bir sütun veya ifade.

ifade Her bir <sütun> değeri için değerlendirilen ifade.

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

tarihler Tarih içeren bir sütun.

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).

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 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

tarihler Tarih içeren bir sütun.

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).

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 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

tarihler Tarih içeren bir sütun.

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).

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 üç 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

tarihler Tarih içeren bir sütun.

year_end_date (isteğe bağlı) Yılın bitiş tarihini tanımlayan tarih içeren


değişmez dize. Varsayılan değeri 31 Aralık şeklindedir.

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

Geçerli bağlamda ayın ilk tarihinde ifadeyi değerlendirir.

Söz dizimi
OPENINGBALANCEMONTH(<expression>,<dates>[,<filter>])

Parametreler

Parametre Tanım

ifade Skaler değer döndüren bir ifade.

tarihler Tarihleri içeren sütun.

filtre (isteğe bağlı) Geçerli bağlama uygulanacak filtreyi belirten bir


ifade.

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

Geçerli bağlamda üç aylık dönemin ilk tarihinde ifadeyi değerlendirir.

Söz dizimi
OPENINGBALANCEQUARTER(<expression>,<dates>[,<filter>])

Parametreler

Parametre Tanım

ifade Skaler değer döndüren bir ifade.

tarihler Tarihleri içeren sütun.

filtre* (isteğe bağlı) Geçerli bağlama uygulanacak filtreyi belirten bir


ifade.

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

Geçerli bağlamda yılın ilk tarihinde ifadeyi değerlendirir.

Söz dizimi
OPENINGBALANCEYEAR(<expression>,<dates>[,<filter>][,<year_end_date>])

Parametreler

Parametre Tanım

ifade Skaler değer döndüren bir ifade.

tarihler Tarihleri içeren sütun.

filtre (isteğe bağlı) Geçerli bağlama uygulanacak filtreyi belirten bir


ifade.

year_end_date (isteğe bağlı) Yılın bitiş tarihini tanımlayan tarih içeren


değişmez dize. Varsayılan değeri 31 Aralık şeklindedir.

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

tarihler Tarihleri içeren sütun.

number_of_intervals Tarihlere eklenecek veya çıkarılacak aralık sayısını belirten bir


tamsayı.

aralık Tarihlerin kaydırılacağı zaman aralığı. Zaman aralığı değeri


şunlardan biri olabilir: year , quarter , month .

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

tarihler Tarih içeren bir sütun.

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).

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 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

Tarihler Tarih içeren bir sütun.

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).

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 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

tarihler Tarih içeren bir sütun.

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).

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 üç 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

tarihler Tarih içeren bir sütun.

year_end_date (isteğe bağlı) Yılın bitiş tarihini tanımlayan tarih içeren


değişmez dize. Varsayılan değeri 31 Aralık şeklindedir.

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

tarihler Tarih içeren bir sütun.

Özellik Değeri/Döndürülen Değer


Tarih değerlerinden oluşan tek sütunlu 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).

Döndürülen tarihler, şu denk formül tarafından döndürülen tarihlerle aynıdır:


DATEADD(dates, -1, year)

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, 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

tarihler Tarihleri içeren sütun.

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).

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 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

tarihler Tarihleri içeren sütun.

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).

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 üç 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

tarihler Tarihleri içeren sütun.

YearEndDate (İsteğe) Yıl bitiş tarihi değeri.

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).

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 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

ifade Skaler değer döndüren bir ifade.

tarihler Tarihleri içeren sütun.

filtre (isteğe bağlı) Geçerli bağlama uygulanacak filtreyi belirten bir


ifade.

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).

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.

=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

ifade Skaler değer döndüren bir ifade.

tarihler Tarihleri içeren sütun.

filtre (isteğe bağlı) Geçerli bağlama uygulanacak filtreyi belirten bir


ifade.

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

ifade Skaler değer döndüren bir ifade.

tarihler Tarihleri içeren sütun.

filtre (isteğe bağlı) Geçerli bağlama uygulanacak filtreyi belirten bir


ifade.

year_end_date (isteğe bağlı) Yılın bitiş tarihini tanımlayan tarih içeren


değişmez dize. Varsayılan değeri 31 Aralık şeklindedir.

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.

=TOTALYTD(SUM(InternetSales_USD[SalesAmount_USD]),DateTime[DateKey], ALL(‘DateTime’), “6/30”)

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

ADDMISSINGITEMS Zaten mevcut değilse, tabloya birden fazla sütundan alınan


öğelerin birleşimini ekler.

ALL Uygulanmış olan filtreleri yoksayarak bir tablodaki tüm


satırları veya bir sütundaki tüm değerleri döndürür.

ALLCROSSFILTERED Bir tabloya uygulanan tüm filtreleri temizler.

ALLEXCEPT Tablodaki belirli sütunlara uygulanmış olanların dışındaki tüm


bağlam filtrelerini kaldırır.

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.

ALLSELECTED 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.

CALCULATE Bir ifadeyi belirtilen filtrelere göre değiştirilen bir bağlamda


değerlendirir.

CALCULATETABLE Bir tablo ifadesini verilen filtreler tarafından değiştirilen


bağlamda değerlendirir.

CROSSFILTER İki sütun arasındaki ilişkiyi hesaplamak için kullanılacak çapraz


filtreleme yönünü belirtir.

DISTINCT Tek sütunlu bir tablo veya belirtilen sütundaki birbirinden


farklı değerleri içeren bir tablo döndürür.

EARLIER Belirtilen sütunun geçerli değerini, bahsedilen sütunun dış


değerlendirme geçişinde döndürür.

EARLIEST Belirtilen sütunun geçerli değerini, belirtilen sütunun dış


değerlendirme geçişinde döndürür.

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

FILTERS Doğrudan columnName filtresi olarak uygulanan değerleri


döndürür.

HASONEFILTER columnName üzerindeki doğrudan filtrelenen değerlerin


sayısı bir ise TRUE, değilse FALSE döndürür.

HASONEVALUE 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.

ISCROSSFILTERED columnName veya aynı ya da ilişkili tablodaki başka bir sütun


filtrelendiğinde TRUE döndürür.

ISFILTERED columnName doğrudan filtrelendiğinde TRUE döndürür.

KEEPFILTERS CALCULATE veya CALCULATETABLE işlevi değerlendirilirken


filtrelerin uygulanma şeklini değiştirir.

RELATED Başka bir tablodan ilgili bir değer döndürür.

RELATEDTABLE Bir tablo ifadesini verilen filtreler tarafından değiştirilen


bağlamda değerlendirir.

REMOVEFILTERS Belirtilen tablo veya sütunlardan filtreleri temizler.

SELECTEDVALUE 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.

SUBSTITUTEWITHINDEX Bağımsız değişken olarak sağlanan iki tablonun sol yarı


birleşimini temsil eden bir tablo döndürür.

USERELATIONSHIP Belirtilen hesaplamada kullanılacak ilişkinin columnName1 ile


columnName2 arasındaki ilişki olmasını belirtir.

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]…)

ADDMISSINGITEMS(<showAllColumn>[, <showAllColumn>]…, <table>, [ROLLUPISSUBTOTAL(]<groupingColumn>[,


<isSubtotal_columnName>][, <groupingColumn>][, <isSubtotal_columnName>]…[)], [, filterTable]…)

Parametreler
T ERIM TA N IM

showAllColumn Kullanılan ölçüler için veri içermeyen öğelerin döndürüleceği


sütun.

tablo Kullanılan ölçüler için verileri olan (NON EMPTY) tüm öğeleri
içeren bir tablo.

groupingColumn Sağlanan tablo bağımsız değişkeninde gruplama için kullanılan


bir sütun.

isSubtotal_columnName Karşılık gelen groupingColumn sütunu için ISSUBTOTAL


değerlerini içeren sağlanan tablo bağımsız değişkenindeki
Boole sütunu.

filterTable Veri içermeyen öğelerin belirli birleşimlerinin eklenip


eklenmeyeceğini belirlemek için mantığa dahil edilecek filtreleri
temsil eden bir tablo. ADDMISSINGITEMS öğesinin filtre
tarafından kaldırmaları nedeniyle mevcut olmayan öğe
birleşimlerine ekleme yapmasını önlemek için kullanılır.

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

tablo Filtrelerini temizlemek istediğiniz tablo.

sütun Filtrelerini temizlemek istediğiniz sütun.

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() Her yerdeki tüm filtreleri kaldırır. ALL() yalnızca filtreleri


temizlemek için kullanılabilir, tablo döndürmez.
İŞ L EV VE K UL L A N IM A Ç IK L A M A

ALL(Tablo) Belirtilen tablodaki tüm filtreleri kaldırır. ALL(Tablo)


tablodaki tüm değerleri döndürür ve uygulanmış
olabilecek filtreleri bağlamdan kaldırır. Bu işlev, birden
fazla gruplandırma düzeyiyle çalıştığınızda ve toplanan
değerin toplam değere oranını oluşturan bir hesaplama
oluşturmak istediğinizde kullanışlıdır. İlk örnekte bu
senaryo gösterilmiştir.

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.

ALLEXCEPT(Tablo, Sütun1 [,Sütun2]...) Tablodaki belirli sütunlara uygulananların dışındaki tüm


bağlam filtrelerini kaldırır. Bir tabloda yer alan sütunların
çoğuna uygulanmış olan filtreleri kaldırmak istediğiniz
durumlarda kısayol olarak kullanabilirsiniz.

Ö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

Satır Etiketleri Aksesuarlar Bisikletler Kıyafet Bileşenler Genel Toplam

2005 %0,02 %9,10 %0,04 %0,75 %9,91

2006 %0,11 %24,71 %0,60 %4,48 %29,90

2007 %0,36 %31,71 %1,07 %6,79 %39,93

2008 %0,20 %16,95 %0,48 %2,63 %20,26

Genel Toplam %0,70 %82,47 %2,18 %14,65 %100,00

Formül
=SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/SUMX(ALL(ResellerSales_USD),
ResellerSales_USD[SalesAmount_USD])

Formül şu şekilde oluşturulur:


1. Pay ( SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]) ), PivotTable içindeki geçerli hücre için
ResellerSales_USD[SalesAmount_USD] içindeki değerlerin toplamıdır. Burada CalendarYear ve
ProductCategoryName için bağlam filtreleri uygulanmıştır.
2. Payda için öncelikle ResellerSales_USD tablosunu belirtip ALL işlevini kullanarak tablodaki tüm bağlam
filtrelerini kaldırmanız gerekir.
3. Ardından SUMX işlevini kullanarak ResellerSales_USD[SalesAmount_USD] sütunundaki değerleri
toplayabilirsiniz. Başka bir deyişle tüm bayi satışları için ResellerSales_USD[SalesAmount_USD] toplamını
elde etmiş olursunuz.

Ö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

Satır Etiketleri Aksesuarlar Bisikletler Kıyafet Bileşenler Genel Toplam

2005 %3,48 %11,03 %1,91 %5,12 %9,91

2006 %16,21 %29,96 %27,29 %30,59 %29,90

2007 %51,62 %38,45 %48,86 %46,36 %39,93

2008 %28,69 %20,56 %21,95 %17,92 %20,26

Genel Toplam %100,00 %100,00 %100,00 %100,00 %100,00

Formül 1

=SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/CALCULATE( SUM(


ResellerSales_USD[SalesAmount_USD]), ALL(DateTime[CalendarYear]))

Formül şu şekilde oluşturulur:


1. Pay ( SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]) ), pivot tablo içindeki geçerli hücre için
ResellerSales_USD[SalesAmount_USD] içindeki değerlerin toplamıdır. Burada CalendarYear ve
ProductCategoryName sütunları için bağlam filtreleri uygulanmıştır.
2. Payda için ALL(Sütun) işlevini kullanarak CalendarYear filtresini kaldırmanız gerekir. Bunu yaptığınızda
sütun etiketlerindeki mevcut bağlam filtreleri uygulandıktan sonra ResellerSales_USD tablosunun kalan
satırlarının toplamı hesaplanır. Bunun payda üzerindeki etkisi, seçilen ProductCategoryName (örtük
bağlam filtresi) ve tüm Yıl değerleri için toplamın hesaplanmasıdır.

Ö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

Satır Etiketleri Aksesuarlar Bisikletler Kıyafet Bileşenler Genel Toplam

2005 %0,25 %91,76 %0,42 %7,57 %100,00

2006 %0,38 %82,64 %1,99 %14,99 %100,00

2007 %0,90 %79,42 %2,67 %17,01 %100,00

2008 %0,99 %83,69 %2,37 %12,96 %100,00

Genel Toplam %0,70 %82,47 %2,18 %14,65 %100,00

Formül 2

=SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/CALCULATE( SUM(


ResellerSales_USD[SalesAmount_USD]), ALL(ProductCategory[ProductCategoryName]))

Formül şu şekilde oluşturulur:


1. Pay ( SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]) ), PivotTable içindeki geçerli hücre için
ResellerSales_USD[SalesAmount_USD] içindeki değerlerin toplamıdır. Burada CalendarYear ve
ProductCategoryName alanlarına bağlam filtreleri uygulanmıştır.
2. Payda için ALL(Sütun) işlevini kullanarak ProductCategoryName filtresini kaldırmanız ve satır
etiketlerindeki mevcut bağlam filtrelerini uyguladıktan sonra ResellerSales_USD tablosunun kalan
satırlarının toplamı hesaplamanız gerekir. Bunun payda üzerindeki etkisi, seçilen Yıl (örtük bağlam filtresi)
ve tüm ProductCategoryName değerleri için toplamın hesaplanmasıdır.
Ayrıca bkz.
Filtre işlevleri (DAX)
ALL işlevi (DAX)
ALLEXCEPT işlevi (DAX)
FILTER işlevi (DAX)
ALLCROSSFILTERED
8.05.2020 • 2 minutes to read

Bir tabloya uygulanan tüm filtreleri temizler.

Sözdizimi
ALLCROSSFILTERED(<table>)

Parametreler

Terim Tanım

tablo Filtrelerini temizlemek istediğiniz tablo.

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:

DIM SA L ESREA SO N [ SA L ESREA SO N N A M E


] [ TOTA LQ UA N T IT Y 1] [ TOTA LQ UA N T IT Y 2]

Tanıtım Etkinliği 60398

Dergi Tanıtımı 60398

Üretici 60398 1818

Promosyon 60398 7390


DIM SA L ESREA SO N [ SA L ESREA SO N N A M E
] [ TOTA LQ UA N T IT Y 1] [ TOTA LQ UA N T IT Y 2]

Diğer 60398 3653

Fiyat 60398 47733

Kalite 60398 1551

Gözden geçirme 60398 1640

Sponsorluk 60398

TV Reklamları 60398 730

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

tablo Sonraki bağımsız değişkenlerde belirtilen sütunlara


uygulanmış olan filtrelerin dışındaki tüm bağlam filtrelerinin
kaldırıldığı tablo.

sütun Bağlam filtrelerinin korunması gereken sütun.

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(Tablo) Belirtilen tablodaki tüm filtreleri kaldırır. ALL(Tablo) tablodaki


tüm değerleri döndürür ve uygulanmış olabilecek filtreleri
bağlamdan kaldırır. Bu işlev, birden fazla gruplandırma
düzeyiyle çalıştığınızda ve toplanan değerin toplam değere
oranını oluşturan bir hesaplama oluşturmak istediğinizde
kullanışlıdır.

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

ALLEXCEPT(Tablo, Sütun1 [,Sütun2]...) Tablodaki belirli sütunlara uygulananların dışındaki tüm


bağlam filtrelerini kaldırır. Bir tabloda yer alan sütunların
çoğuna uygulanmış olan filtreleri kaldırmak istediğiniz
durumlarda kısayol olarak kullanabilirsiniz.

Ö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.

=CALCULATE(SUM(ResellerSales_USD[SalesAmount_USD]), ALLEXCEPT(DateTime, DateTime[CalendarYear]))

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

tablo Tüm bağlam filtrelerinin kaldırıldığı tablo.

sütun Tüm bağlam filtrelerinin kaldırıldığı bir sütun.

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

ALL(Sütun) Tablodaki belirtilen sütuna uygulanmış olan tüm filtreleri


kaldırır. Tabloda diğer sütunlardaki tüm filtreler uygulanmaya
devam eder.

ALL(Tablo) Belirtilen tablodaki tüm filtreleri kaldırır.

ALLEXCEPT(Tablo,Sütun1,Sütun2...) Belirtilen sütunlar haricinde tabloda mevcut olan tüm bağlam


filtrelerini geçersiz kılar.

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'))

// Countrows ALL of datetime


= COUNTROWS(ALL('DateTime'))

// Countrows ALLNOBLANKROW of ResellerSales_USD


=COUNTROWS(ALLNOBLANKROW('ResellerSales_USD'))

// Countrows ALL of ResellerSales_USD


=COUNTROWS(ALL('ResellerSales_USD'))

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

2005 1280 1281

2006 1280 1281

2007 1280 1281

2008 1280 1281

1280 1281

Genel Toplam 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

2005 60856 60856

2006 60856 60856

2007 60856 60856

2008 60856 60856

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

Genel Toplam 60856 60856

Ş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

tableName Standart DAX söz dizimi kullanılarak belirtilen var olan


tablonun adı. Bu parametre bir ifade olamaz. Bu parametre
isteğe bağlıdır.

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı (genellikle tam ad kullanılır). Bu değer bir ifade
olamaz. Bu parametre isteğe bağlıdır.

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]

Aksesuarlar 2000 80450596,98 877006,7987 38786,018


23

Aksesuarlar 2001 80450596,98 877006,7987 38786,018


23

Aksesuarlar 2002 625,7933 80450596,98 877006,7987 38786,018 91495,3104


23

Aksesuarlar 2003 26037,3132 80450596,98 877006,7987 38786,018 572927,0136


23

Aksesuarlar 2004 12122,9115 80450596,98 877006,7987 38786,018 212584,4747


23

Aksesuarlar 2005 80450596,98 877006,7987 38786,018


23
[ Ü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]

Aksesuarlar 2006 80450596,98 877006,7987 38786,018


23

Bisikletler 2000 80450596,98 877006,7987 689287,7939


23

Bisikletler 2001 80450596,98 877006,7987 689287,7939


23

Bisikletler 2002 73778,938 80450596,98 877006,7987 689287,7939 91495,3104


23

Bisikletler 2003 439771,4136 80450596,98 877006,7987 689287,7939 572927,0136


23

Bisikletler 2004 175737,4423 80450596,98 877006,7987 689287,7939 212584,4747


23

Bisikletler 2005 80450596,98 877006,7987 689287,7939


23

Bisikletler 2006 80450596,98 877006,7987 689287,7939


23

Kıyafet 2000 80450596,98 877006,7987 95090,7757


23

Kıyafet 2001 80450596,98 877006,7987 95090,7757


23

Kıyafet 2002 12132,4334 80450596,98 877006,7987 95090,7757 91495,3104


23

Kıyafet 2003 58234,2214 80450596,98 877006,7987 95090,7757 572927,0136


23

Kıyafet 2004 24724,1209 80450596,98 877006,7987 95090,7757 212584,4747


23

Kıyafet 2005 80450596,98 877006,7987 95090,7757


23

Kıyafet 2006 80450596,98 877006,7987 95090,7757


23

Bileşenler 2000 80450596,98 877006,7987 53842,2111


23

Bileşenler 2001 80450596,98 877006,7987 53842,2111


23
[ Ü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]

Bileşenler 2002 4958,1457 80450596,98 877006,7987 53842,2111 91495,3104


23

Bileşenler 2003 48884,0654 80450596,98 877006,7987 53842,2111 572927,0136


23

Bileşenler 2004 80450596,98 877006,7987 53842,2111 212584,4747


23

Bileşenler 2005 80450596,98 877006,7987 53842,2111


23

Bileşenler 2006 80450596,98 877006,7987 53842,2111


23

Rapordaki sütunlar şunlardır:


Bayi Satış Tutarı
Yıl ve ürün kategorisi için gerçek Bayi Satış değeri. Bu değer, raporunuzun ortasındaki bir hücrede, yıl ile
kategorinin kesiştiği noktada görünür.
Takvim Yılının Tamamı için Bayi Görsel Toplamı
Bir ürün kategorisinin tüm yıllardaki toplam değeri. Bu değer belirli bir ürün kategorisine ait olan sütunun veya
satırın sonunda ve rapordaki tüm yıllarda görünür.
Ürün Kategorisi Adının Tamamı için Bayi Görsel Toplamı
Tüm ürün kategorilerinin yıl içindeki toplam değeri. Bu değer belirli bir yıla ait olan sütunun veya satırın sonunda ve
rapordaki tüm ürün kategorilerinde görünür.
Bayi Görsel Toplamı
Tüm yılların ve ürün kategorilerinin toplam değeri. Bu değer genellikle tablonun sağ alt köşesinde görünür.
Bayi Genel Toplamı
Bu, tüm bayi satışlarının filtre uygulanmadan önceki genel toplamıdır. [Bayi Görsel Toplamı] ile farkına dikkat edin.
Bu raporda biri Ürün Kategorisi Grubu biri de Promosyon Türü olmak üzere iki (2) filtre bulunduğunu unutmayın.

NOTE
İfadenizde açık filtreler varsa bunlar da ifadeye uygulanır.
HESAPLA
8.05.2020 • 4 minutes to read

Bir ifadeyi belirtilen filtrelere göre değiştirilen bir bağlamda değerlendirir.

Sözdizimi
CALCULATE(<expression>,<filter1>,<filter2>…)

Parametreler
T ERIM TA N IM

ifade Değerlendirilecek ifade.

filtre1, filtre2,… (isteğe bağlı) Boole ifadesi veya filtre tanımlayan


tablo ifadesi içeren virgülle ayrılmış liste.

İ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, iç içe yerleştirilmiş CALCULATE işlevi kullanamaz.

İ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

Satır Aksesuarlar Bisikletler Kıyafet Bileşenler Genel Toplam


Etiketleri

2005 %0,02 %9,10 %0,04 %0,75 %9,91

2006 %0,11 %24,71 %0,60 %4,48 %29,90

2007 %0,36 %31,71 %1,07 %6,79 %39,93

2008 %0,20 %16,95 %0,48 %2,63 %20,26

Genel %0,70 %82,47 %2,18 %14,65 %100,00


Toplam

=( SUM('ResellerSales_USD'[SalesAmount_USD]))
/CALCULATE( SUM('ResellerSales_USD'[SalesAmount_USD])
,ALL('ResellerSales_USD'))

Paydadaki CALCULATE ifadesi, toplam ifadesinin hesaplamadaki tüm satırları içermesini


sağlar. Bu, ifadenin pay bölümündeki CalendarYear ve ProductCategoryName örtük
filtrelerini geçersiz kılar.

İ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

Bir tablo ifadesini verilen filtreler tarafından değiştirilen bağlamda değerlendirir.

Sözdizimi
CALCULATETABLE(<expression>,<filter1>,<filter2>,…)

Parametreler
T ERIM TA N IM

İfade** Değerlendirilecek tablo ifadesi.

filtre1, filtre2,… Boole ifadesi veya filtre tanımlayan tablo ifadesi.

İ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, iç içe yerleştirilmiş CALCULATE işlevi kullanamaz.

İ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:

=SUMX( CALCULATETABLE('InternetSales_USD', 'DateTime'[CalendarYear]=2006)


, [SalesAmount_USD])
Şu tabloyu döndürür:

IN T ERN ET C A L C UL AT ETA B L E 2006 İN T ERN ET SAT I Ş L A RIN IN


SAT IR ET IK ET L ERI SA L ESA M O UN T _USD İN T ERN ET SAT I Ş L A RI 2006 SAT I Ş L A RIN A O RA N I

2005 $2.627.031,40 $5.681.440,58 0,46

2006 $5.681.440,58 $5.681.440,58 1,00

2007 $8.705.066,67 $5.681.440,58 1,53

2008 $9.041.288,80 $5.681.440,58 1,59

Genel Toplam $26.054.827,45 $5.681.440,58 4,59

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.

Yön Kullanılacak çapraz filtre yönü. Aşağıdakilerden biri olmalıdır:


yok
Bu ilişkide çapraz filtreleme gerçekleşmez

bir : İlişki filtresinin bir veya arama tarafını filtreler.

her ikisi -
Filtrenin iki tarafından birini filtreler

yok : Bu ilişkide çapraz filtreleme gerçekleşmez

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:

Yıla göre satılan ürün sayısını almanın iki yolu vardır:


İlişkide iki yönlü çapraz filtrelemeyi açın. Bu, filtrelerin bu iki tablodaki verileri işleme şeklini değiştirir.

CROSSFILTER işlevini kullanarak ilişkilerin yalnızca bu ölçüdeki çalışma şeklini değiştirin.


DAX'ta CROSSFILTER işlevini kullanarak çapraz filtre yönünün ilişki tarafından tanımlanan iki sütun arasındaki
çalışma şeklini değiştirebilirsiniz. Bu durumda DAX ifadesi şu şekilde görünür:

BiDi:= CALCULATE([Distinct Count of ProductKey], CROSSFILTER(FactInternetSales[ProductKey],


DimProduct[ProductKey] , Both))

Ölçüm ifademizde CROSSFILTER işlevini kullandığımızda beklenen sonuçları elde ederiz:


DISTINCT (sütun)
8.05.2020 • 3 minutes to read

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

sütun İçerdiği benzersiz değerler döndürülecek olan sütun. Sütun


döndüren bir ifade de kullanılabilir.

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

Satır Etiketleri Aksesuarlar Bisikletler Kıyafet Genel Toplam

2005 1013 1013

2006 2677 2677

2007 6792 4875 2867 9309

2008 9435 5451 4196 11377

Genel Toplam 15114 9132 6852 18484

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

tablo Benzersiz satırların döndürüleceği kaynak tablo. Tablo, bir tablo


sonucu veren ifade de olabilir.

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:

EVALUATE DISTINCT( { (1, "A"), (2, "B"), (1, "A") } )

Aşağıdaki tabloyu döndürür:

[ 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

sütun Bir sütun veya sütun sonucu veren ifade.

sayı (İsteğe bağlı) Dış değerlendirme geçişine iletilecek pozitif sayı.

Sonraki değerlendirme düzeyi 1 ile gösterilir. İki düzey çıkış 2


ile temsil edilir ve bu şekilde devam eder.

Atlanırsa varsayılan değer 1'dir.

Özellik Değeri/Döndürülen Değer


Sütundan alınan satırın dış değerlendirme geçişi sayısı konumundaki geçerli değeri.

Ö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.

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

18 Bisiklet Şortu $156.167,88 18

26 Bisiklet Taşıyıcıları $220.720.70 14

27 Bisiklet Standları $35.628,69 30

28 Şişeler ve Tutacaklar $59.342,43 24

5 Alt Kadrolar $48.643,47 27

6 Frenler $62.113,16 23

19 Şapkalar $47.934,54 28

7 Zincirler $8.847,08 35

29 Temizleyiciler $16.882,62 32

8 Mil Setleri $191.522,09 15

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

32 Hidrasyon paketleri $96.893,78 20

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

1 Dağ Bisikletleri $34.305.864,29 2

12 Dağ Kadroları $4.511.170,68 4

35 Çantalar 36

13 Pedallar $140.422,20 19

36 Pompalar $12.695,18 34

2 Yol Bisikletleri $40.551.696,34 1

14 Yol Kadroları $3.636.398,71 5

15 Seleler $52.526,47 26

22 Şortlar $385.707,80 10

23 Çoraplar $28.337,85 31

24 Taytlar $189.179,37 16

37 İç ve Dış Lastikler $224.832,81 13

3 Gezi Bisikletleri $13.334.864,18 3

16 Gezi Kadroları $1.545.344,02 6

25 Yelekler $240.990,04 11

17 Tekerlekler $648.240,04 8

Sıralama değeri oluşturma


Bir satırdaki belirli bir değer için sıralama değeri elde etmenin yöntemlerinden biri, karşılaştırılan değere kıyasla
aynı tabloda daha büyük (veya daha küçük) değere sahip olan satırların sayısını belirlemektir. Bu teknik, tablodaki
en yüksek değer için boş veya sıfır değeri döndürür, eşit değerler aynı sıralama değerine sahip olur ve bir sonraki
değer (eşit değerlerden sonraki) ardışık olmayan bir sıralama değeri alır. Aşağıdaki örneğe bakın.
Aşağıdaki formülle yeni hesaplanmış sütun olan SubCategor ySalesRanking sütunu oluşturulur.

= COUNTROWS(FILTER(ProductSubcategory, EARLIER(ProductSubcategory[TotalSubcategorySales])
<ProductSubcategory[TotalSubcategorySales]))+1

Hesaplama yöntemi aşağıdaki adımlarda daha ayrıntılı bir şekilde anlatılmıştır.


1. EARLIER işlevi, tablonun geçerli satırı için TotalSubcategorySales değerini alır. Bu durumda işlem
başlamakta olduğu için tablodaki ilk satır alınır.
2. EARLIER ([TotalSubcategorySales]) formülü, dış döngüdeki geçerli satır olan $156.167,88 sonucunu verir.
3. FILTER işlevi bu noktada tüm satırlardaki TotalSubcategorySales değeri $156.167,88 değerinden (geçerli
EARLIER değeri) büyük olan bir tablo döndürür.
4. COUNTROWS işlevi, filtrelenen tablonun satırlarını sayar ve yeni hesaplanmış sütuna geçerli satırdan 1
fazla değer atar. 1 eklemenin nedeni, en üst sıradaki değerin boş hale gelmesini önlemektir.
5. Hesaplanmış sütun formülü, bir sonraki satıra geçer ve 1 ile 4 arasındaki adımları yineler. Bu adımlar
tablonun sonuna ulaşılana kadar yinelenir.
EARLIER işlevi her zaman geçerli tablo işleminden önceki sütunun değerini alır. Döngünün daha öncesinde yer
alan bir değeri almak isterseniz ikinci bağımsız değişkeni 2 olarak ayarlayın.

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

sütun Sütun başvurusu.

Özellik Değeri/Döndürülen Değer


Filtreleri kaldırılmış sütun.

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

Avustralya $4.999.021,84 $4.999.021,84

Kanada $1.343.109,10 $1.343.109,10

Fransa $2.490.944,57 $2.490.944,57

Almanya $2.775.195,60 $2.775.195,60

Birleşik Krallık $5.057.076,55 $5.057.076,55

Amerika Birleşik Devletleri $9.389.479,79

Genel Toplam $26.054.827,45 $16.665.347,67

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

Satır Etiketleri Aksesuarlar Bisikletler Kıyafet Genel Toplam

2005 $1.526.481,95 $1.526.481,95

2006 $3.554.744,04 $3.554.744,04

2007 $156.480,18 $5.640.106,05 $70.142,77 $5.866.729,00

2008 $228.159,45 $5.386.558,19 $102.675,04 $5.717.392,68

Genel Toplam $384.639,63 $16.107.890,23 $172.817,81 $16.665.347,67

SUMX(FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")


,'InternetSales_USD'[SalesAmount_USD])

Ayrıca bkz.
Filtre işlevleri (DAX)
ALL işlevi (DAX)
ALLEXCEPT işlevi (DAX)
FILTERS
8.05.2020 • 2 minutes to read

Doğrudan columnName filtresi olarak uygulanan değerleri döndürür.

Söz dizimi
FILTERS(<columnName>)

Parametreler
T ERIM A Ç IK L A M A

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı. Bu değer bir ifade olamaz.

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]))

Yukarıdaki örnek, ifadenin değerlendirildiği bağlamda ResellerSales_USD[ProductKey] sütununa kaç doğrudan


filtre uygulanmış olduğunu öğrenmenizi sağlar.
HASONEFILTER
8.05.2020 • 2 minutes to read

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

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı. Bu değer bir ifade olamaz.

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

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı. Bu değer bir ifade olamaz.

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

2005 2006 2007 2008


SÜT UN ET IK ET L ERI

ResellerSales 24,83 % 74,88 % 100,00 % 50,73 %


compared to
2007

3. ProductCategory[ProductCategoryName] öğesini Satır Etiketleri kutusuna sürükleyerek şuna benzer bir


sonuç elde edin:

RESEL L ERSA L ES
C O M PA RED TO 2007 SÜT UN ET IK ET L ERI

Satır Etiketleri 2005 2006 2007 2008

Aksesuarlar 6,74 % 31,40 % 100,00 % 55,58 %

Bisikletler 28,69 % 77,92 % 100,00 % 53,46 %

Kıyafet 3,90 % 55,86 % 100,00 % 44,92 %

Bileşenler %11,05 65,99 % 100,00 % 38,65 %

Genel Toplam 24,83 % 74,88 % 100,00 % 50,73 %

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

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı. Bu değer bir ifade olamaz.

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

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı. Bu değer bir ifade olamaz.

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

CALCULATE veya CALCULATETABLE işlevi değerlendirilirken filtrelerin uygulanma şeklini değiştirir.

Söz dizimi
KEEPFILTERS(<expression>)

Parametreler
T ERIM TA N IM

ifade Herhangi bir ifade.

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:

Washington eyaletindeki İnternet Satışları.


Washington ve Oregon eyaletlerindeki İnternet Satışları (iki eyalet birden).
Washington eyaleti ve İngiliz Kolumbiyası bölgesindeki İnternet Satışları (iki bölge birden).
Dördüncü ifade, Washington ve İngiliz Kolumbiyası filtresi uygulanmış durumdayken Washington ve Oregon için
İnternet Satışlarını hesaplar.

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

[$$ in WA] $ 2.467.248,34

[$$ in WA and OR] $ 3.638.239,88

[$$ in WA and BC] $ 4.422.588,44

[$$ in WA and OR ??] $ 3.638.239,88

[$$ in WA !!] $ 2.467.248,34

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

Başka bir tablodan ilgili bir değer döndürür.

Sözdizimi
RELATED(<column>)

Parametreler
T ERIM TA N IM

sütun Almak istediğiniz değerleri içeren sütun.

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")

Bu ifade, InternetSales_USD tablosundaki SalesTerritoryKey anahtar sütununun değeriyle başlayarak SalesTerritory


tablosundaki ülke değerini aramak için RELATED işlevini kullanır. Arama sonucu filtre işlevi tarafından
InternetSales_USD satırının filtrelenip filtrelenmediğini belirlemek için kullanılır.

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.

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

Avustralya $4.999.021,84 $4.999.021,84

Kanada $1.343.109,10 $1.343.109,10

Fransa $2.490.944,57 $2.490.944,57

Almanya $2.775.195,60 $2.775.195,60

Birleşik Krallık $5.057.076,55 $5.057.076,55

Amerika Birleşik Devletleri $9.389.479,79

Genel Toplam $26.054.827,45 $16.665.347,67

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

Satır Etiketleri Aksesuarlar Bisikletler Kıyafet Genel Toplam

2005 $1.526.481,95 $1.526.481,95

2006 $3.554.744,04 $3.554.744,04

2007 $156.480,18 $5.640.106,05 $70.142,77 $5.866.729,00

2008 $228.159,45 $5.386.558,19 $102.675,04 $5.717.392,68


A B D DI Ş I İN T ERN ET
SAT I Ş L A RI SÜT UN ET IK ET L ERI

Genel Toplam $384.639,63 $16.107.890,23 $172.817,81 $16.665.347,67

Ayrıca bkz.
RELATEDTABLE işlevi (DAX)
Filtre işlevleri (DAX)
RELATEDTABLE
8.05.2020 • 2 minutes to read

Bir tablo ifadesini verilen filtreler tarafından değiştirilen bağlamda değerlendirir.

Sözdizimi
RELATEDTABLE(<tableName>)

Parametreler
T ERIM TA N IM

tableName Standart DAX söz dizimi kullanılarak belirtilen var olan


tablonun adı. Bu değer bir ifade olamaz.

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ı

1 1 Bisikletler 28.318.144,65 USD

2 2 Bileşenler

3 3 Kıyafet 339.772,61 USD

4 4 Aksesuarlar 700.759,96 USD

= 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

Belirtilen tablo veya sütunlardan filtreleri temizleyin.

Sözdizimi
REMOVEFILTERS([<table> | <column>[, <column>[, <column>[,…]]]])

Parametreler
T ERIM TA N IM

tablo Filtrelerini temizlemek istediğiniz tablo.

sütun Filtrelerini temizlemek istediğiniz sütun.

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:

DIM P RO DUC TC AT EGO RY [ EN


GL ISH P RO DUC TC AT EGO RY N
A M E] [ ISGRA N DTOTA L ] [ TOTA L SA L ES] [ % SA L ES]

Row1 True 29358677,2207 1

Bisikletler False 28318144,6507 0,964557920570538


DIM P RO DUC TC AT EGO RY [ EN
GL ISH P RO DUC TC AT EGO RY N
A M E] [ ISGRA N DTOTA L ] [ TOTA L SA L ES] [ % SA L ES]

Aksesuarlar False 700759,96 0,023868921434441

Kıyafet False 339772,61 0,0115731579950215

Ö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:

DIM P RO DUC T SUB C AT EGO R


DIM P RO DUC TC AT EGO RY Y
[ EN GL ISH P RO DUC TC AT EGO [ EN GL ISH P RO DUC T SUB C AT E
RY N A M E] GO RY N A M E] [ TOTA L SA L ES] [ % SA L ES]

Aksesuarlar Bisiklet Taşıyıcıları 39360 0,05616759

Aksesuarlar Bisiklet Standları 39591 0,05649723

Aksesuarlar Şişeler ve Tutacaklar 56798,19 0,08105228

Aksesuarlar Temizleyiciler 7218,6 0,0103011

Aksesuarlar Çamurluklar 46619,58 0,06652717

Aksesuarlar Kasklar 225335,6 0,3215589

Aksesuarlar Hidrasyon paketleri 40307,67 0,05751994

Aksesuarlar İç ve Dış Lastikler 245529,32 0,35037578

Bisikletler Dağ Bisikletleri 9952759,564 0,35146228

Bisikletler Yol Bisikletleri 14520584,04 0,51276608

Bisikletler Gezi Bisikletleri 3844801,05 0,13577164


DIM P RO DUC T SUB C AT EGO R
DIM P RO DUC TC AT EGO RY Y
[ EN GL ISH P RO DUC TC AT EGO [ EN GL ISH P RO DUC T SUB C AT E
RY N A M E] GO RY N A M E] [ TOTA L SA L ES] [ % SA L ES]

Kıyafet Şapkalar 19688,1 0,05794493

Kıyafet Eldivenler 35020,7 0,10307099

Kıyafet Formalar 172950,68 0,5090189

Kıyafet Şortlar 71319,81 0,20990453

Kıyafet Çoraplar 5106,32 0,01502864

Kıyafet Yelekler 35687 0,10503201


SELECTEDVALUE
8.05.2020 • 2 minutes to read

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

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı. Bu değer bir ifade olamaz.

alternateResult (İsteğe bağlı) columnName bağlamı sıfır olarak filtrelendiğinde


veya birden fazla ayrı değer içerdiğinde döndürülen değer.
Sağlanmazsa BLANK() varsayılan değeri kullanılır.

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:

DEFINE MEASURE DimProduct[Selected Color] = SELECTEDVALUE(DimProduct[Color], "No Single Selection")


EVALUATE SUMMARIZECOLUMNS(ROLLUPADDISSUBTOTAL(DimProduct[Color], "Is Total"), "Selected Color", [Selected
Color])
ORDER BY [Is Total] ASC, [Color] ASC

Şunu döndürür:

DIM P RO DUC T [ REN K ] [ IS TOTA L ] [ SEL EC T ED C O LO R]

Siyah FALSE Siyah

Mavi FALSE Mavi

Gri FALSE Gri


DIM P RO DUC T [ REN K ] [ IS TOTA L ] [ SEL EC T ED C O LO R]

Çoklu FALSE Çoklu

NA FALSE NA

Red FALSE Red

Gümüş FALSE Gümüş

Gümüş/Siyah FALSE Gümüş/Siyah

Beyaz FALSE Beyaz

Yellow FALSE Yellow

TRUE Tek Seçim Yok


SUBSTITUTEWITHINDEX
8.05.2020 • 3 minutes to read

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

tablo Üçüncü bağımsız değişken (indexColumnsTable) olarak


belirtilen tablo ile sol yarı birleşim gerçekleştirerek filtrelenecek
tablo. Bu, sol yarı birleşimin sol tarafındaki tablodur ve
döndürülen tablo, bu tablo ile aynı sütunlara sahiptir. Buradaki
tek özel durum, iki tablonun tüm ortak sütunlarının
döndürülen tabloda tek bir dizin sütunu ile değiştirilecek
olmasıdır.

indexColumnName Bu işleve bağımsız değişken olarak sağlanan iki tablodaki tüm


ortak sütunları değiştiren dizin sütununun adını belirten
dizedir.

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.

sıralama_ifadesi Sonuç değerinin doğru dizin değerleri oluşturmak için


indexColumnsTable tablosunun sıralama düzenini belirtme
amacıyla kullanıldığı herhangi bir DAX ifadesi.
indexColumnsTable tablosu için belirtilen sıralama düzeni,
tablodaki her bir satırın dizinini tanımlar ve bu dizin,
döndürülen tabloda bu işleve ilk bağımsız değişken olarak
sağlanan tabloda görünen şekilde indexColumnsTable
değerlerinin birleşimlerini temsil etmek için kullanılır.
T ERIM TA N IM

sırala (İsteğe bağlı) orderBy_expression değerlerinin sıralama


düzenini belirten bir değer (artan veya azalan):

Değer: Desc. Alternatif değer: 0 (sıfır)/FALSE .


orderBy_expression değerlerini azalan düzende sıralar. sırala
parametresi atlandığında kullanılan varsayılan değer budur.

Değer: ASC . Alternatif değer: 1 /TRUE . orderBy_expression


değerlerini artan düzende sıralar.

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( &lt;anyExpression&gt;, 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:

=CALCULATE(SUM(InternetSales[SalesAmount]), USERELATIONSHIP(InternetSales[ShippingDate], DateTime[Date]))

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.

SIPA RI Ş L ERIM TA B LO SU SAT I Ş L A RIM TA B LO SU

1 Haziran 1 Haziran satışları

2 Haziran 2 Haziran satışları

(sipariş tarihi girilmemiş) 3 Haziran satışları

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:

SAT IR ET IK ET L ERI FAT URA SAY ISI

Aksesuarlar 18.208

Bisikletler 15.205

Kıyafet 7.461

Genel Toplam 27.659

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

CONTAINS 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.

CUSTOMDATA Bağlantı dizesindeki CustomData özelliğinin içeriğini döndürür.

ISBLANK Değerin boş olup olmadığını denetler ve TRUE veya FALSE


değerini döndürür.

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.

ISINSCOPE Belirtilen sütun düzey hiyerarşisindeki düzey olduğunda true


döndürür.

ISLOGICAL Değerin mantıksal bir değer (TRUE veya FALSE) olup


olmadığını denetler ve TRUE veya 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.

ISONORAFTER 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.

ISTEXT Değerin metin olup olmadığını denetler ve TRUE veya FALSE


değerini döndürür.

LOOKUPVALUE search_columnName ve search_value ile belirtilen tüm


ölçütleri karşılayan satırın result_columnName bölümündeki
değeri döndürür.

USERNAME Bağlantı sırasında sisteme iletilen kimlik bilgilerinden alınan


etki alanı adını ve kullanıcı adını döndürür.
İŞ L EV A Ç IK L A M A

USEROBJECTID Geçerli kullanıcının Nesne Kimliğini veya SID değerini


döndürür.

USERPRINCIPALNAME Kullanıcı asıl adını döndürür.


CONTAINS
8.05.2020 • 2 minutes to read

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

tablo Bir veri tablosu döndüren herhangi bir DAX ifadesi.

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı. Bu değer bir ifade olamaz.

değer columnName içinde aranacak tek bir skaler değer döndüren


herhangi bir DAX ifadesi. İfade yalnızca bir kez ve bağımsız
değişken listesine geçirilmeden önce değerlendirilir.

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.

=CONTAINS(InternetSales, [ProductKey], 214, [CustomerKey], 11185)


CUSTOMDATA
8.05.2020 • 2 minutes to read

Bağlantı dizesindeki CustomData özelliğinin içeriğini döndürür.

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

CONTAINSROW(<tableExpr>, <scalarExpr>[, <scalarExpr>, …])

Parametreler
T ERIM TA N IM

scalarExprN Skaler değer döndüren herhangi bir geçerli DAX ifadesi.

tableExpr Veri tablosu döndüren herhangi bir geçerli DAX ifadesi.

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ı:

EVALUATE FILTER(ALL(DimProduct[Color]), [Color] IN { "Red", "Yellow", "Blue" })


ORDER BY [Color]
ve

EVALUATE FILTER(ALL(DimProduct[Color]), ([Color]) IN { "Red", "Yellow", "Blue" })


ORDER BY [Color]

ve

EVALUATE FILTER(ALL(DimProduct[Color]), CONTAINSROW({ "Red", "Yellow", "Blue" }, [Color]))


ORDER BY [Color]

Aşağıdaki tek sütunlu tabloyu döndürür:

DIM P RO DUC T [ REN K ]

Mavi

Red

Yellow

Örnek 2
Aşağıdaki eşdeğer DAX sorguları:

EVALUATE FILTER(SUMMARIZE(DimProduct, [Color], [Size]), ([Color], [Size]) IN { ("Black", "L") })

ve

EVALUATE FILTER(SUMMARIZE(DimProduct, [Color], [Size]), CONTAINSROW({ ("Black", "L") }, [Color], [Size]))

Şunu döndürür:

DIM P RO DUC T [ REN K ] DIM P RO DUC T [ B EDEN ]

Siyah L

Örnek 3
Aşağıdaki eşdeğer DAX sorguları:

EVALUATE FILTER(ALL(DimProduct[Color]), NOT [Color] IN { "Red", "Yellow", "Blue" })


ORDER BY [Color]

ve

EVALUATE FILTER(ALL(DimProduct[Color]), NOT CONTAINSROW({ "Red", "Yellow", "Blue" }, [Color]))


ORDER BY [Color]

Aşağıdaki tek sütunlu tabloyu döndürür:


DIM P RO DUC T [ REN K ]

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

değer Sınamak istediğiniz değer veya ifade.

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.

//Sales to Previous Year Ratio

=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

2006 $28.553.348,43 $10.209.985,08 %179,66

2007 $39.248.847,52 $28.553.348,43 %37,46

2008 $24.542.444,68 $39.248.847,52 %-37,47

Genel Toplam $102.554.625,71

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

değer Sınamak istediğiniz değer.

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

Sayı çift ise TRUE, tek ise FALSE değerini döndürür.

Sözdizimi
ISEVEN(number)

Parametreler
T ERIM TA N IM

number Test edilecek değer. Sayı bir tamsayı değilse kesilir.

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

Belirtilen sütun düzey hiyerarşisindeki düzey olduğunda true döndürür.

Söz dizimi
ISINSCOPE(<columnName>)

Parametreler
T ERIM TA N IM

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı. Bu değer bir ifade olamaz.

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:

DIM P RO DUC T [ C DIM P RO DUC T [ SU [ C AT EGO RY [ SUB C AT EGO RY


AT EGO RY ] B C AT EGO RY ] SUBTOTA L ] SUBTOTA L ] [ SA L ES] [ % O F PA REN T ]

TRUE TRUE 28.397.095,65 100,00

Aksesuarlar FALSE TRUE 78.951,00 0,28

Aksesuarlar Bisiklet Taşıyıcıları FALSE FALSE 39.360,00 49,85

Aksesuarlar Bisiklet Standları FALSE FALSE 39.591,00 50,15

Bisikletler FALSE TRUE 28.318.144,65 99,72

Bisikletler Dağ Bisikletleri FALSE FALSE 9.952.759,56 35,15

Bisikletler Yol Bisikletleri FALSE FALSE 14.520.584,04 51,28

Bisikletler Gezi Bisikletleri FALSE FALSE 3.844.801,05 13,58

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

değer Sınamak istediğiniz değer.

Özellik Değeri/Döndürülen Değer


Mantıksal değerler için TRUE, TRUE veya FALSE dışındaki değerler için FALSE.

Örnek
ISLOGICAL işlevinin davranışı aşağıdaki üç örnekte gösterilmiştir.

//RETURNS: Is Boolean type or Logical


=IF(ISLOGICAL(true), "Is Boolean type or Logical", "Is different type")

//RETURNS: Is Boolean type or Logical


=IF(ISLOGICAL(false), "Is Boolean type or Logical", "Is different type")

//RETURNS: Is different type


=IF(ISLOGICAL(25), "Is Boolean type or Logical", "Is different type")

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

değer Denetlemek istediğiniz değer.

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

değer Sınamak istediğiniz değer.

Özellik Değeri/Döndürülen Değer


Değer sayısal ise TRUE, değilse FALSE.

Ö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")

//RETURNS: Is Not number


=IF(ISNUMBER("123"), "Is number", "Is Not number")

Ayrıca bkz.
Bilgi işlevleri (DAX)
ISODD
8.05.2020 • 2 minutes to read

Sayı tek ise TRUE, çift ise FALSE değerini döndürür.

Söz dizimi
ISODD(number)

Parametreler
T ERIM TA N IM

sayı Test edilecek değer. Sayı bir tamsayı değilse kesilir.

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

değer Denetlemek istediğiniz değer.

Özellik Değeri/Döndürülen Değer


Değer metin ise TRUE, değilse FALSE

Ö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

search_columnName ve search_value ile belirtilen tüm ölçütleri karşılayan satırın result_columnName


bölümündeki değeri döndürür.

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.

search_columnName Arama gerçekleştirilen result_columnName ile aynı tabloda


veya onunla ilişkili bir tabloda 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.

arama_değeri Aranmakta olan tablodaki herhangi bir sütuna başvurmayan


skaler bir ifade.

alternateResult (İsteğe bağlı) result_columnName bağlamı sıfır olarak


filtrelendiğinde veya birden fazla ayrı değer içerdiğinde
döndürülen değer. Belirtilmediğinde result_columnName
sütununun sıfır değeri verecek şekilde filtrelenmiş olması
durumunda BLANK(), birden fazla ayrı değer olduğunda ise
hata döndürür.

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.

=IF(CONTAINS(UsersTable,UsersTable[login], USERNAME()), "Allowed", BLANK())


USEROBJECTID
8.05.2020 • 2 minutes to read

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

Kullanıcı asıl adını döndürür.

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

AND İ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.

COALESCE BLANK olarak değerlendirilmeyen ilk ifadeyi döndürür.

FALSE FALSE mantıksal değerini döndürür.

IF İlk bağımsız değişkende belirtilen koşulun karşılanıp


karşılanmadığını denetler.

IF.EAGER Eager yürütmesini kullanarak ilk bağımsız değişken olarak


sağlanan koşulun karşılanıp karşılanmadığını denetler.

IFERROR Bir ifadeyi değerlendirir ve ifade bir hata döndürürse belirtilen


değeri döndürür.

NOT FALSE değerini TRUE değerine veya TRUE değerini FALSE


değerine dönüştürür.

OR TRUE değerini döndürmek için bağımsız değişkenlerden


birinin TRUE olup olmadığını denetler.

SWITCH Bir ifadeyi bir değer listesine göre değerlendirir ve birden çok
olası sonuç ifadesinden birini döndürür.

TRUE TRUE mantıksal değerini döndürür.


AND
8.05.2020 • 2 minutes to read

İ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

mantıksal_1, mantıksal_2 Test etmek istediğiniz mantıksal değerler.

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.

= IF( AND( SUM( 'InternetSales_USD'[SalesAmount_USD])


>SUM('ResellerSales_USD'[SalesAmount_USD])
, CALCULATE(SUM('InternetSales_USD'[SalesAmount_USD]), PREVIOUSYEAR('DateTime'[DateKey] ))
>CALCULATE(SUM('ResellerSales_USD'[SalesAmount_USD]), PREVIOUSYEAR('DateTime'[DateKey] ))
)
, "Internet Hit"
, ""
)
Şunu döndürür:

SÜT UN
A N D I Ş L EVI ET IK ET L ERI

Satır Etiketleri 2005 2006 2007 2008 Genel Toplam

Bisiklet Şortu

Bisiklet
Taşıyıcıları

Bisiklet İnternet Hiti


Standları

Şişeler ve İnternet Hiti


Tutacaklar

Alt Kadrolar

Frenler

Şapkalar

Zincirler

Temizleyiciler

Mil Setleri

Dişliler

Çamurluklar İnternet Hiti

Ç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

İç ve Dış İnternet Hiti


Lastikler

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

ifade Skaler bir ifade döndüren herhangi bir DAX ifadesi.

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:

EVALUATE { COALESCE(BLANK(), 10, DATE(2008, 3, 3)) }

BLANK olarak değerlendirilmeyen ilk ifade olan 10 ifadesini döndürür.

Ö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

FALSE mantıksal değerini döndürür.

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.

=IF(SUM('InternetSales_USD'[SalesAmount_USD]) >200000, TRUE(), false())

Aşağıdaki tabloda, örnek formülün 'ProductCategory'[ProductCategoryName] Satır Etiketleri ve


'DateTime'[CalendarYear] Sütun Etiketleri ile kullanılması durumunda alınacak sonuçları gösterilmektedir.

SÜT UN
T RUE- FA L SE ET IK ET L ERI

Satır Etiketleri 2005 2006 2007 2008 Genel Toplam

Aksesuarlar FALSE FALSE TRUE TRUE FALSE TRUE

Bisikletler TRUE TRUE TRUE TRUE FALSE TRUE

Kıyafet FALSE FALSE FALSE FALSE FALSE TRUE

Bileşenler FALSE FALSE FALSE FALSE FALSE FALSE

FALSE FALSE FALSE FALSE FALSE FALSE

Genel Toplam TRUE TRUE TRUE TRUE FALSE TRUE

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.

value_if_true Mantıksal sınama TRUE olduğunda döndürülen değer.

value_if_false Mantıksal sınama FALSE olduğunda döndürülen değer.


Atlanırsa BLANK değeri döndürülür.

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.

=IF([StateProvinceCode]= "CA" && ([MaritalStatus] = "M" || [NumberChildrenAtHome] >1),[City])

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.

ResultIfTrue Mantıksal sınama TRUE olduğunda döndürülen değer.

ResultIfFalse (İsteğe bağlı) Mantıksal sınama FALSE olduğunda döndürülen


değer atlanırsa BLANK değeri döndürülür.

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

değer Herhangi bir değer veya ifade.

hata_değeri Herhangi bir değer veya ifade.

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

mantıksal_1, mantıksal_2 Test etmek istediğiniz mantıksal değerler.

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.

IF( OR( CALCULATE(SUM('ResellerSales_USD'[SalesAmount_USD]),


'ProductSubcategory'[ProductSubcategoryName]="Touring Bikes") > 1000000
, CALCULATE(SUM('ResellerSales_USD'[SalesAmount_USD]), 'DateTime'[CalendarYear]=2007) > 2500000
)
, "Circle of Excellence"
, ""
)

Ş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

Satır Etiketleri 2005 2006 2007 2008 Genel Toplam

Abbas, Syed E

Alberts, Amy
E

Ansman-
Wolfe, Pamela
O

Blythe, Circle of Circle of Circle of Circle of Circle of Circle of


Michael G Excellence Excellence Excellence Excellence Excellence Excellence

Campbell,
David R

Carson, Jillian Circle of Circle of Circle of Circle of Circle of Circle of


Excellence Excellence Excellence Excellence Excellence Excellence

Ito, Shu K

Jiang, Stephen
Y

Mensa-
Annan, Tete A

Mitchell, Linda Circle of Circle of Circle of Circle of Circle of Circle of


C Excellence Excellence Excellence Excellence Excellence Excellence

Pak, Jae B Circle of Circle of Circle of Circle of Circle of Circle of


Excellence Excellence Excellence Excellence Excellence Excellence

Reiter, Tsvi
Michael

Saraiva, José Circle of Circle of Circle of Circle of Circle of Circle of


Edvaldo Excellence Excellence Excellence Excellence Excellence Excellence

Tsoflias, Lynn
N

Valdez, Rachel
B

Vargas,
Garrett R
SA L ESP ERSO N
FLAG T RUE

Varkey Circle of
Chudukatil, Excellence
Ranjit R

Genel Toplam Circle of Circle of Circle of Circle of Circle of Circle of


Excellence Excellence Excellence Excellence Excellence Excellence

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

ifade İfadenin birden fazla değerlendirileceği (her bir satır/bağlam


için) tek bir skaler değer döndüren DAX ifadesi.

değer ifade sonucuyla eşleştirilecek sabit değer.

sonuç ifade sonucunun karşılık gelen değer ile eşleşmesi durumunda


değerlendirilecek olan skaler ifade.

diğer koşul ifade sonucunun değer bağımsız değişkenlerinden herhangi


biriyle eşleşmemesi durumunda değerlendirilecek olan skaler
ifade.

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.

=SWITCH([Month], 1, "January", 2, "February", 3, "March", 4, "April"


, 5, "May", 6, "June", 7, "July", 8, "August"
, 9, "September", 10, "October", 11, "November", 12, "December"
, "Unknown month number" )
TRUE
9.05.2020 • 2 minutes to read

TRUE mantıksal değerini döndürür.

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.

= IF(SUM('InternetSales_USD'[SalesAmount_USD]) >200000, TRUE(), false())

Aşağıdaki tabloda, örnek formülün PivotTable içinde 'ProductCategory'[ProductCategoryName] Satır Etiketleri ve


'DateTime'[CalendarYear] Sütun Etiketleri ile kullanılması durumunda alınacak sonuçları gösterilmektedir.

SÜT UN
T RUE- FA L SE ET IK ET L ERI

Satır Etiketleri 2005 2006 2007 2008 Genel Toplam

Aksesuarlar FALSE FALSE TRUE TRUE FALSE TRUE

Bisikletler TRUE TRUE TRUE TRUE FALSE TRUE

Kıyafet FALSE FALSE FALSE FALSE FALSE TRUE

Bileşenler FALSE FALSE FALSE FALSE FALSE FALSE

FALSE FALSE FALSE FALSE FALSE FALSE

Genel Toplam TRUE TRUE TRUE TRUE FALSE TRUE

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

ABS Sayının mutlak değerini döndürür.

ACOS Bir sayının ark kosinüsünü veya ters kosinüsünü döndürür.

ACOSH Bir sayının ters hiperbolik kosinüsünü döndürür.

ACOT Bir sayının ark kotanjantını veya ters tanjantını döndürür.

ACOTH Bir sayının ters hiperbolik kotanjantını döndürür.

ASIN Bir sayının arksinüsünü veya ters sinüsünü döndürür.

ASINH Bir sayının ters hiperbolik sinüsünü döndürür.

ATAN Bir sayının arktanjantını veya ters tanjantını döndürür.

ATANH Bir sayının ters hiperbolik tanjantını döndürür.

CEILING Sayıyı yukarıya doğru en yakın tamsayıya veya en yakın


anlamlı çarpıma yuvarlar.

COMBIN Belirli bir öğe sayısı için kombinasyon sayısını döndürür.

COMBINA Belirli bir öğe sayısı için kombinasyon (tekrarlarla) sayısını


döndürür.

COS Verilen açının kosinüsünü döndürür.

COSH Bir sayının hiperbolik kosinüsünü döndürür.

CURRENCY Bağımsız değişkeni değerlendirir ve sonucu para birimi veri


türü olarak döndürür.

DEGREES Radyanı dereceye dönüştürür.

DIVIDE Bölme işlemi gerçekleştirir ve 0 ile bölme durumunda


alternatif sonuç veya BLANK() döndürür.

EVEN En yakın çift tam sayıya yuvarlanan sayıyı döndürür.


İŞ L EV A Ç IK L A M A

EXP Verilen bir sayının üssünün e sayısının üssü olarak


kullanmasıyla elde edilen sonucu döndürür.

FACT Sayının 1*2*3*...* serisine eşit olan ve verilen sayı ile biten
faktöriyelini döndürür.

FLOOR Sayıyı aşağıya sıfıra doğru, en yakın anlamlı çarpıma yuvarlar.

GCD İki veya daha fazla tamsayının en büyük ortak bölenini


döndürür.

INT Sayıyı aşağıya doğru en yakın tamsayıya yuvarlar.

ISO.CEILING Sayıyı yukarıya doğru en yakın tamsayıya veya en yakın


anlamlı çarpıma yuvarlar.

LCM Tamsayıların en küçük ortak çarpanını döndürür.

LN Sayının doğal logaritmasını döndürür.

LOG Sayının belirttiğiniz tabanda logaritmasını döndürür.

LOG10 Sayının 10 tabanında logaritmasını döndürür.

MROUND İstenen çarpıma yuvarlanmış sayıyı döndürür.

ODD En yakın tek tam sayıya yuvarlanan sayıyı döndürür.

PI Pi sayısının 15 basamağa kadar olan değerini


(3,14159265358979) döndürür.

POWER Üssü alınan sayının sonucunu döndürür.

PRODUCT Sütundaki sayıların çarpımını döndürür.

PRODUCTX Bir tablodaki her satır için değerlendirilen ifadenin çarpımını


döndürür.

QUOTIENT Bölme işlemi gerçekleştirir ve bölme sonucunun yalnızca


tamsayı bölümünü döndürür.

RADIANS Dereceyi radyana dönüştürür.

RAND 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.

RANDBETWEEN Belirttiğiniz iki sayı arasındaki aralıkta rastgele bir sayı


döndürür.

ROUND Bir sayıyı belirtilen basamak sayısına yuvarlar.

ROUNDDOWN Sayıyı aşağıya, sıfıra doğru yuvarlar.


İŞ L EV A Ç IK L A M A

ROUNDUP Sayıyı yukarıya, sıfırdan (0) uzağa doğru yuvarlar.

SIGN Bir sayının, hesaplama sonucunun veya sütun değerinin


işaretini belirler.

SQRT Bir sayının karekökünü döndürür.

SUM Sütundaki tüm sayıları toplar.

SUMX Bir tablodaki her satır için değerlendirilen ifadenin toplamını


döndürür.

TRUNC Sayının ondalık veya kesir bölümünü kaldırarak sayıyı kesip


tamsayıya dönüştürür.
ABS
8.05.2020 • 2 minutes to read

Sayının mutlak değerini döndürür.

Söz dizimi
ABS(<number>)

Parametreler
T ERIM TA N IM

sayı Mutlak değerini istediğiniz sayı.

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

Sayı İstediğiniz açının kosinüsü -1 ile 1 arasında olmalıdır.

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Ç

=ACOS(-0,5) -0,5'in radyan cinsinden arkkosinüsü, 2,094395102


2*pi/3.

=ACOS(-0,5)*180/PI() -0,5'in derece cinsinden arkkosinüsü. 120


ACOSH
8.05.2020 • 2 minutes to read

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Ç

=ACOSH(1) 1'in ters hiperbolik kosinüsü. 0

=ACOSH(10) 10'un ters hiperbolik kosinüsü. 2,993228


ACOT
8.05.2020 • 2 minutes to read

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

Sayı İstediğiniz açının kosinüsü. Gerçek bir sayı olmalıdır.

Döndürülen değer
Tek bir ondalık değer.
ACOT
9.05.2020 • 2 minutes to read

Bir sayının ters hiperbolik kotanjantını döndürür.

Söz dizimi
ACOTH(number)

Parametreler
T ERIM TA N IM

Sayı Sayının mutlak değeri 1’den büyük olmalıdır.

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

number İstediğiniz açının sinüsü -1 ile 1 arasında olmalıdır.

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Ç

=ASIN(-0,5) -0,5'in radyan cinsinden arksinüsü, -pi/6 -0,523598776

=ASIN(-0,5)*180/PI() -0,5'in derece cinsinden arksinüsü -30

=DEGREES(ASIN(-0.5)) -0,5'in derece cinsinden arksinüsü -30


ASINH
9.05.2020 • 2 minutes to read

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

sayı Herhangi bir gerçek sayı.

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Ç

=ASINH(-2,5) -2,5 değerinin ters hiperbolik sinüsü -1,647231146

=ASINH(10) 10 değerinin ters hiperbolik sinüsü 2,99822295


ATAN
8.05.2020 • 2 minutes to read

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

number İstediğiniz açının tanjantı.

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Ç

=ATAN(1) 1'in radyan cinsinden arktanjantı, pi/4 0,785398163

=ATAN(1)*180/PI() 1'in derece cinsinden arktanjantı 45


ATANH
8.05.2020 • 2 minutes to read

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

number 1 ile -1 arasında herhangi bir gerçek sayı.

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,76159416) 0,76159416 değerinin ters hiperbolik 1,00000001


tanjantı.

=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.

önem Yuvarlamak istediğiniz çarpanın önem düzeyi. Örneğin, en


yakın tamsayıya yuvarlamak için 1 yazın.

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

number Öğe sayısı.

number_chosen Her birleşimdeki öğe sayısı.

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Ç

=COMBIN(8,2) 8 adaydan oluşturulabilecek iki kişilik 28


takım sayısı.
COMBINA
8.05.2020 • 2 minutes to read

Belirli bir öğe sayısı için kombinasyon (tekrarlarla) sayısını döndürür.

Sözdizimi
COMBINA(number, number_chosen)

Parametreler
T ERIM TA N IM

number 0 değerinden büyük veya eşit olmalı ve Number_chosen


değerinden büyük veya eşit olmalıdır. Tamsayı olmayan
değerler kesilir.

number_chosen 0 değerinden büyük veya 0 değerine eşit olmalıdır. Tamsayı


olmayan değerler kesilir.

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Ç

=COMBINA(4,3) 4 ve 3 için kombinasyon (tekrarlarla) 20


sayısını döndürür.

=COMBINA(10,3) 10 ve 3 için kombinasyon (tekrarlarla) 220


sayısını döndürür.
COS
8.05.2020 • 2 minutes to read

Verilen açının kosinüsünü döndürür.

Sözdizimi
COS(number)

Parametreler
T ERIM TA N IM

number Gereklidir. Radyan cinsinden kosinüsünü istediğiniz açı.

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Ç

=COS(1,047) 1,047 radyanın kosinüsü 0,5001711

=COS(60*PI()/180) 60 derecenin kosinüsü 0,5

=COS(RADIANS(60)) 60 derecenin kosinüsü 0,5


COSH
8.05.2020 • 2 minutes to read

Bir sayının hiperbolik kosinüsünü döndürür.

Söz dizimi
COSH(number)

Parametreler
T ERIM TA N IM

sayı Gereklidir. Hiperbolik kosinüsünü bulmak istediğiniz herhangi


bir gerçek sayı.

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Ç

=COSH(4) 4'ün hiperbolik kosinüsü 27,308233

=COSH(EXP(1)) Doğal logaritma tabanının hiperbolik 7,6101251


kosinüsü.
CURRENCY
8.05.2020 • 2 minutes to read

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)

$1234,5600 değerini döndürür.


DEGREES
8.05.2020 • 2 minutes to read

Radyanı dereceye dönüştürür.

Söz dizimi
DEGREES(angle)

Parametreler
T ERIM TA N IM

açı Gerekli. Dönüştürmek istediğiniz radyan cinsinden açı.

Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ

=DEGREES(PI()) Pi radyanı derecesi 180


DIVIDE
8.05.2020 • 2 minutes to read

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

pay Bölünen veya bölünecek sayı.

payda Bölen veya bölünecek sayı.

alternateresult (İsteğe bağlı) Sıfıra bölme kaynaklı hatalarda döndürülecek


değer. Sağlanmazsa BLANK() varsayılan değeri kullanılır.

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

number Yuvarlanacak değer.

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Ç

=EVEN(1,5) 1,5 sayısını en yakın çift tamsayıya 2


yuvarlar

=EVEN(3) 3 sayısını en yakın çift tamsayıya 4


yuvarlar

=EVEN(2) 2 sayısını en yakın çift tamsayıya 2


yuvarlar

=EVEN(-1) -1 sayısını en yakın çift tamsayıya -2


yuvarlar
EXP
8.05.2020 • 2 minutes to read

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

sayı Taban e'ye uygulanan üs. Sabit e 2,71828182845904'e eşittir


ve doğal logaritmanın tabanıdır.

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

number Faktöriyelini hesaplamak istediğiniz negatif olmayan sayı.

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])

Aşağıdaki tabloda beklenen sonuçlar gösterilmektedir:

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

Sayıyı aşağıya sıfıra doğru, en yakın anlamlı çarpıma yuvarlar.

Söz dizimi
FLOOR(<number>, <significance>)

Parametreler
T ERIM TA N IM

sayı Yuvarlamak istediğiniz sayısal değer.

önem Yuvarlamak istediğiniz çarpan. sayı ve önem bağımsız


değişkenleri aynı anda pozitif veya negatif olmalıdır.

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.

=FLOOR(InternetSales[Total Product Cost],.5)

Aşağıdaki tabloda bazı örnek değerler için beklenen sonuçlar gösterilmektedir.

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Ç

=GCD(5, 2) 5 ve 2'nin en büyük ortak böleni. 1

=GCD(24, 36) 24 ve 36'nın en büyük ortak böleni. 12

=GCD(7, 1) 7 ve 1'in en büyük ortak böleni. 1


INT
8.05.2020 • 2 minutes to read

Sayıyı aşağıya doğru en yakın tamsayıya yuvarlar.

Sözdizimi
INT(<number>)

Parametreler
T ERIM TA N IM

number Aşağıya doğru bir tamsayıya yuvarlamak istediğiniz sayı.

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

number Yuvarlamak istediğiniz sayı veya sayı içeren bir sütuna


başvuru.

önem (isteğe bağlı) Yuvarlamak istediğiniz çarpanın önem düzeyi.


Örneğin, en yakın tamsayıya yuvarlamak için 1 yazın. Önem
birimi belirtilmediğinde sayı en yakın tamsayıya yukarı
yuvarlanır.

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.

Önem bağımsız değişkeni Boole türündeyse sonuç tamsayı türünde olur.


Önem bağımsız değişkeni sayısal olmayan bir tür olduğunda sonuç gerçek tür olur.

Örnek: Pozitif Sayılar


Açıklama
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 ISO.CEILING işlevini kullanarak fiyatları en yakın
beş sente yuvarlayabilirsiniz.
Kod

=ISO.CEILING(4.42,0.05)

Örnek: Negatif Sayılar


Açıklama
Aşağıdaki formül -4,40 ISO.CEILING değerini döndürür.
Kod

=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Ç

=LCM(5, 2) 5 ve 2'nin en küçük ortak çarpanı. 10

=LCM(24, 36) 24 ve 36'nın en küçük ortak çarpanı. 72


LN
9.05.2020 • 2 minutes to read

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

sayı Doğal logaritmasını istediğiniz pozitif sayı.

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

Sayının belirttiğiniz tabanda logaritmasını döndürür.

Sözdizimi
LOG(<number>,<base>)

Parametreler
T ERIM TA N IM

number Logaritmasını istediğiniz pozitif sayı.

base Logaritmanın tabanıdır. Atlanırsa, 10 tabanı kullanılır.

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

Sayının 10 tabanında logaritmasını döndürür.

Sözdizimi
LOG10(<number>)

Parametreler
T ERIM TA N IM

number 10 tabanında logaritmasını istediğiniz pozitif sayı.

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

number Bölme işlemi yapıldıktan sonra kalanını bulmak istediğiniz sayı.

bölen Değerin bölünmesini istediğiniz sayı.

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

İstenen çarpıma yuvarlanmış sayıyı döndürür.

Söz dizimi
MROUND(<number>, <multiple>)

Parametreler
T ERIM TA N IM

sayı Yuvarlanacak sayı.

birden çok Sayıyı yuvarlamak istediğiniz çarpanın önem düzeyi.

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.

Örnek: Ondalık Basamaklar


Açıklama
Aşağıdaki ifade 1,3 değerini 2'nin en yakın katına yuvarlar. Beklenen sonuç 1,4’tür.
Kod

=MROUND(1.3,0.2)

Örnek: Negatif Sayılar


Açıklama
Aşağıdaki ifade -10 değerini -3'ün en yakın katına yuvarlar. Beklenen sonuç -9’dur.
Kod

=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

En yakın tek tam sayıya yuvarlanan sayıyı döndürür.

Söz dizimi
ODD(number)

Parametreler
T ERIM TA N IM

sayı Gereklidir. Yuvarlanacak değer.

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Ç

=ODD(1,5) 1,5' i en yakın tek tamsayıya yukarı 3


yuvarlar.

=ODD(3) 3'ü en yakın tek tamsayıya yukarı 3


yuvarlar.

=ODD(2) 2'yi en yakın tek tamsayıya yukarı 3


yuvarlar.

=ODD(-1) -1'i en yakın tek tamsayıya yukarı -1


yuvarlar.

=ODD(-2) -2'yi en yakın tek tamsayıya yukarı -3


(0'dan uzağa) yuvarlar.
PI
8.05.2020 • 2 minutes to read

Pi sayısının 15 basamağa kadar olan değerini (3,14159265358979) döndürür.

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

Üssü alınan sayının sonucunu döndürür.

Sözdizimi
POWER(<number>, <power>)

Parametreler
T ERIM TA N IM

number Herhangi bir gerçek sayı olabilecek taban sayı.

power Taban sayının üssü.

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ütundaki sayıların çarpımını döndürür.


Bir tablodaki her satır için değerlendirilen bir ifadenin çarpımını döndürmek için PRODUCTX işlevini (DAX) kullanın.

Sözdizimi
PRODUCT(<column>)

Parametreler
T ERIM TA N IM

sütun Çarpımın hesaplanacağı sayıları içeren sütun.

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

Bir tablodaki her satır için değerlendirilen ifadenin çarpımını döndürür.


Bir sütundaki sayıların çarpımını döndürmek için PRODUCT işlevini (DAX) kullanın.

Söz dizimi
PRODUCTX(<table>, <expression>)

Parametreler
T ERIM TA N IM

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

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:

= [PresentValue] * PRODUCTX( AnnuityPeriods, 1+[FixedInterestRate] )

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

pay Bölünen veya bölünecek sayı.

payda Bölen veya bölünecek sayı.

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

Dereceyi radyana dönüştürür.

Söz dizimi
RADIANS(angle)

Parametreler
T ERIM TA N IM

açı Gereklidir. Dönüştürmek istediğiniz derece cinsinden açı.

Örnek
F O RM ÜL A Ç IK L A M A SO N UÇ

=RADIANS(270) 270 derecenin radyan değeri (4,712389 4,712389


veya 3π/2 radyan)
RAND
8.05.2020 • 2 minutes to read

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

Belirttiğiniz iki sayı arasındaki aralıkta rastgele bir sayı döndürür.

Sözdizimi
RANDBETWEEN(<bottom>,<top>)

Parametreler
T ERIM TA N IM

Alt İşlev tarafından döndürülecek en küçük tamsayı.

Üst İşlev tarafından döndürülecek en büyük tamsayı.

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

Bir sayıyı belirtilen basamak sayısına yuvarlar.

Söz dizimi
ROUND(<number>, <num_digits>)

Parametreler
T ERIM TA N IM

sayı Yuvarlamak istediğiniz sayı.

sayı_rakamlar Yuvarlamak istediğiniz basamak sayısı. Negatif değer, ondalık


ayırıcının sol tarafına yuvarlar, sıfır değeri ise en yakın
tamsayıya yuvarlar.

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

Sayıyı aşağıya, sıfıra doğru yuvarlar.

Sözdizimi
ROUNDDOWN(<number>, <num_digits>)

Parametreler
T ERIM TA N IM

number Aşağı yuvarlanmasını istediğiniz bir gerçek sayı.

sayı_rakamlar Yuvarlamak istediğiniz basamak sayısı. Negatif, ondalık


noktanın soluna, sıfır ise en yakın tamsayıya yuvarlanır.

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

Sayıyı yukarıya, sıfırdan (0) uzağa doğru yuvarlar.

Sözdizimi
ROUNDUP(<number>, <num_digits>)

Parametreler
T ERIM TA N IM

number Yukarı yuvarlanmasını istediğiniz gerçek sayı.

sayı_rakamlar Yuvarlamak istediğiniz basamak sayısı. Negatif


sayı_rakamlar değeri, ondalık sayının soluna yuvarlar;
sayı_rakamlar değerinin sıfır olması veya atlanması
durumunda sayı en yakın tamsayıya yuvarlanır.

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)

Örnek: İkinci Bağımsız Değişken Olarak Ondalık Sayılar


Açıklama
Aşağıdaki formül, 1,3 değerini 0,2'nin en yakın katına yuvarlar. Beklenen sonuç 2 değeridir.
Kod

=ROUNDUP(1.3,0.2)

Örnek: İkinci Bağımsız Değişken Olarak Negatif Sayı


Açıklama
Aşağıdaki formül, FreightCost sütunundaki değeri yuvarlar ve beklenen sonuçlar aşağıdaki tabloda verilmiştir:
Kod

=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.

=SIGN( ([Sale Price] - [Cost]) )

Ayrıca bkz.
Matematik ve Trigonometri işlevleri (DAX)
SQRT
8.05.2020 • 2 minutes to read

Bir sayının karekökünü döndürür.

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ütundaki tüm sayıları toplar.

Söz dizimi
SUM(<column>)

Parametreler
T ERIM TA N IM

sütun Toplanacak sayıları içeren sütun.

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

Bir tablodaki her satır için değerlendirilen ifadenin toplamını döndürür.

Sözdizimi
SUMX(<table>, <expression>)

Parametreler
T ERIM TA N IM

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

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

number Kesilmesini istediğiniz sayı.

sayı_rakamlar Kesilmenin duyarlığını belirten bir sayı; atlanırsa, 0 (sıfır)


kullanılır.

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 işlevler, diğer işlevlerle tanımlanamayan benzersiz eylemler gerçekleştirir.

Bu kategoride
İŞ L EV A Ç IK L A M A

CONVERT Bir veri türündeki bir ifadeyi bir diğerine dönüştürür.

DATATABLE Satır içi veri değerleri kümesi bildirmek için bir mekanizma
sağlar.

ERROR Hata iletisine sahip bir hata döndürür.

EXCEPT Başka bir tabloda görünmeyen tablo satırlarını döndürür.

GENERATESERIES Aritmetik serinin değerlerini içeren tek sütunlu bir tablo


döndürür.

GROUPBY SUMMARIZE işlevine benzer olan GROUPBY işlevi, eklediği


uzantı sütunları için örtük CALCULATE işlemi gerçekleştirmez.

INTERSECT İki tablonun satırlarının kesişimini döndürür ve yinelenenleri


korur.

ISEMPTY Bir tablonun boş olup olmadığını denetler.

ISSELECTEDMEASURE İ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.

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.

SELECTEDMEASURE İfadeler tarafından hesaplama öğelerinin bağlam içindeki


ölçüye başvurmasını sağlamak için kullanılır.

SELECTEDMEASUREFORMATSTRING İfadeler tarafından hesaplama öğelerinin bağlam içindeki


ölçünün biçim dizesini alması için kullanılır.

SELECTEDMEASURENAME İfadeler tarafından hesaplama öğelerinin bağlam içindeki


ölçüye adla başvurmasını sağlamak için kullanılır.

SUMMARIZECOLUMNS Bir grup kümesinden özet tablo döndürür.

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

TREATAS Bir tablo ifadesinin sonucunu, ilişkili olmayan bir tablodaki


sütunlara filtre olarak uygular.

UNION Bir çift tablodan birleşim (birleştirme) tablosu oluşturur.


CONVERT
8.05.2020 • 2 minutes to read

Bir veri türündeki bir ifadeyi bir diğerine dönüştürür.

Sözdizimi
CONVERT(<Expression>, <Datatype>)

Parametreler
T ERIM TA N IM

İfadeler Herhangi bir geçerli ifade.

Datatype Şunları içeren bir sabit listesi: INTEGER(Tamsayı),


DOUBLE(Ondalık Sayı), STRING(Metin), BOOLEAN(True/False),
CURRENCY(Sabit Ondalık Sayı), DATETIME(Tarih, Saat vb.).

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

EVALUATE { CONVERT(DATE(1900, 1, 1), INTEGER) }

Ş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

ColumnName Tablo döndüren bir DAX ifadesi.

DataType Şunları içeren bir sabit listesi: INTEGER, DOUBLE, STRING,


BOOLEAN, CURRENCY, DATETIME

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.

Geçerli değerler şunlardır: 3, -5, BLANK(), "2009-04-15


02:45:21". Değerler, ifadenin hemen dışındaki bir şeye ve
sütunlara, tablolara, ilişkilere veya başka bir şeye başvuramaz.

Eksik değerler BLANK() olarak kabul edilir. Örneğin şunlar


aynıdır: {1,2,BLANK(),4} {1,2,,4}

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

Hata iletisine sahip bir hata döndürür.

Söz dizimi
ERROR(<text>)

Parametreler
T ERIM TA N IM

metin Hata iletisi içeren metin dizesi.

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

Macenta ürün renklerinden biri olmadığından ERROR işlevi yürütülmez.


EXCEPT
9.05.2020 • 2 minutes to read

Başka bir tabloda görünmeyen tablo satırlarını döndürür.

Söz dizimi
EXCEPT(<table_expression1>, <table_expression2>

Parametreler
T ERIM TA N IM

Tablo_ifadesi Tablo döndüren bir DAX ifadesi.

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

startValue Diziyi oluşturmak için kullanılan ilk değer.

endValue Diziyi oluşturmak için kullanılan son değer.

IncrementValue (İsteğe bağlı) Dizinin artış değeri. Sağlanmazsa 1 varsayılan


değeri kullanılır.

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)

Aşağıdaki tek sütunlu tabloyu döndürür:

[ DE ĞER]

2
[ DE ĞER]

Örnek 2
Aşağıdaki DAX işlevi:

EVALUATE GENERATESERIES(1.2, 2.4, 0.4)

Aşağıdaki tek sütunlu tabloyu döndürür:

[ DE ĞER]

1.2

1.6

2.4

Örnek 3
Aşağıdaki DAX işlevi:

EVALUATE GENERATESERIES(CURRENCY(10), CURRENCY(12.4), CURRENCY(0.5))

Aşağıdaki tek sütunlu tabloyu döndürür:

[ 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

tablo Bir veri tablosu döndüren herhangi bir DAX ifadesi.

groupBy_columnName Verilerin gruplandırılması için kullanılacak olan bir tablo sütunu


(veya ilişkili tabloda yer alan bir sütun). Bu parametre bir ifade
olamaz.

ad GroupBy sütunlarının listesine eklenen yeni sütuna verilen ad;


çift tırnak içine alınır.

ifade İfadenin her bir GroupBy değeri kümesi için değerlendirileceği


tek bir skaler değer döndüren DAX ifadesi.

Not: GroupBy içinde kullanılan ifade, “X” toplama işlevlerinden


herhangi birini (SUMX, AVERAGEX, MINX, MAXX gibi) içerebilir.
Bu işlevlerden biri bu amaçla kullanıldığında tablo bağımsız
değişkeni (normalde tablo ifadesi olması gerekir) bu belgede
belirtildiği gibi özel bir CURRENTGROUP() işleviyle
değiştirilebilir.

İfadeyle ilgili kısıtlamalar:

- İfadede CALCULATE işlevi (ve ölçüleri) kullanılamaz.


- CURRENTGROUP işlevi yalnızca ifadedeki tablo taramalarının
en üst düzeyinde kullanılabilir. Başka bir deyişle
SUMX(<tablo>,SUMX(CURRENTGROUP(…), …)) şeklindeki
kullanımlara izin verilmez. ABS işlevi tarama
gerçekleştirmediğinden ABS(SUMX(CURRENTGROUP(), [Sütun]
) ) ifadesine izin verilir.

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.

İkinci sütunda ülkede satışı yapılan ürün kategorileri yer alır.

Üçü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

İki tablonun satırlarının kesişimini döndürür ve yinelenenleri korur.

Sözdizimi
INTERSECT(<table_expression1>, <table_expression2>)

Parametreler
T ERIM TA N IM

Tablo_ifadesi Tablo döndüren bir DAX ifadesi.

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

Bir tablonun boş olup olmadığını denetler.

Sözdizimi
ISEMPTY(<table_expression>)

Parametreler
T ERIM TA N IM

table_expression Tablo başvurusu veya tablo döndüren DAX ifadesi.

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)))

Döndürülen değer: FALSE


ISSELECTEDMEASURE
8.05.2020 • 2 minutes to read

İ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

M1, M2, ... Ölçü listesi.

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

leftJoinTable Birleşimin sol tarafındaki tabloyu tanımlayan tablo ifadesi.

rightJoinTable Birleşimin sağ tarafındaki tabloyu tanımlayan tablo ifadesi.

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

leftJoinTable Birleşimin sol tarafındaki tabloyu tanımlayan tablo ifadesi.

rightJoinTable Birleşimin sağ tarafındaki tabloyu tanımlayan tablo ifadesi.

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.

SELECTEDVALUE( DimCurrency[FormatString], SELECTEDMEASUREFORMATSTRING() )

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

Bir grup kümesinden özet tablo döndürür.

Sözdizimi
SUMMARIZECOLUMNS( <groupBy_columnName> [, < groupBy_columnName >]…, [<filterTable>]…[, <name>, <expression>]…)

Parametreler
T ERIM TA N IM

groupBy_columnName Döndürülen tablodaki benzersiz değerlerin dahil edildiği temel


tablo için tam sütun başvurusu (Tablo[Sütun]). Her
groupBy_columnName sütunu, daha sonra belirtilen
sütunlarla çapraz olarak birleştirilir (farklı tablolar) veya
otomatik olarak dahil edilir (aynı tablo).

filterTable groupBy_columnName bağımsız değişkenleri ile belirtilen


şekilde tüm sütunların filtre bağlamına eklenen tablo ifadesi.
Filtre tablosunda bulunan değerler, çapraz ekleme/otomatik
dahil etme işlemi gerçekleştirmeden önce filtreleme için
kullanılır.

ad Belirtilen sonraki ifade için kullanılacak sütun adını temsil eden


bir dize.

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:

SUMMARIZECOLUMNS ( 'Sales Territory'[Category], FILTER('Customer', 'Customer' [First Name] = “Alicia”) )


Ölçü bulunmayan bu sorguda groupBy sütunları Filter ifadesinden (Müşteri tablosundan) herhangi bir sütun
içermez. Filtre, groupBy sütunlarına uygulanmaz. Satış Bölgesi ve Müşteri tablosu, Bayi satışları olgu tablosu
üzerinden dolaylı olarak ilişkili olabilir. Aralarında doğrudan bir ilişki olmadığından filtre ifadesi çalışmaz ve
groupBy sütunları etkilenmez.
Ancak şu sorguda:

SUMMARIZECOLUMNS ( 'Sales Territory'[Category], 'Customer' [Education], FILTER('Customer', 'Customer'[First


Name] = “Alicia”) )

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

SUMMARIZECOLUMNS(<groupBy_columnName>[, < groupBy_columnName >]…, [<filterTable>]…[, <name>, IGNORE(…)]…)

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

SUMMARIZECOLUMNS( Sales[CustomerId], "Total Qty", IGNORE( SUM( Sales[Qty] ) ), “BlankIfTotalQtyIsNot3”, IF(


SUM( Sales[Qty] )=3, 3 ) )

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:

C USTO M ERID TOTA LQT Y B L A N K IF TOTA LQT Y ISN OT 3

A 5

B 3 3

C 3 3
IGNORE ile

C USTO M ERID TOTA LQT Y B L A N K IF TOTA LQT Y ISN OT 3

B 3 3

C 3 3

Tüm ifadeler yoksayılır

SUMMARIZECOLUMNS( Sales[CustomerId], "Blank", IGNORE( Blank() ), “BlankIfTotalQtyIsNot5”, IGNORE( IF( SUM(


Sales[Qty] )=5, 5 ) ) )

İ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.

C USTO M ERID TOTA LQT Y B L A N K IF TOTA LQT Y ISN OT 3

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:

DIM DAT E[ C A L EN DA RY EA R] [ SA L ES] [ VISUA L TOTA L SA L ES]

2007 9.791.060,30 29.358.677,22


DIM DAT E[ C A L EN DA RY EA R] [ SA L ES] [ VISUA L TOTA L SA L ES]

2008 9.770.899,74 29.358.677,22

Diğer taraftan aynı sorgu NONVISUAL işleviyle oluşturulduğunda:

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:

DIM DAT E[ C A L EN DA RY EA R] [ SA L ES] [ VISUA L TOTA L SA L ES]

2007 9.791.060,30 19.561.960,04

2008 9.770.899,74 19.561.960,04

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

ROLLUPADDISSUBTOTAL ( [<filter> …, ] <groupBy_columnName>, <isSubtotal_columnName>[, <filter> …][,


<groupBy_columnName >, <isSubtotal_columnName>[, <filter> …]…] )

Parametreler
T ERIM TA N IM

groupBy_columnName İçinde bulunan değerlere göre özet grupları oluşturmak için


kullanılacak olan var olan bir sütunun tam adı. Bu parametre
bir ifade olamaz.

isSubtotal_columnName Sonuca eklenecek olan ve bir satırın groupBy sütunu (veya


ROLLUPGROUP ile kullanıldığında sütunları) alt toplamı olup
olmadığını gösteren Boole sütununun adı. Bu değer,
ISSUBTOTAL işlevi kullanılarak hesaplanır.

filtre Geçerli gruplandırma düzeyindeki filtre bağlamına eklenen bir


tablo ifadesi. İlk gruplandırma sütunu öncesinde genel toplam
düzeyinde bir filtre uygulanır.

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ç

ISC AT EGO RY SUBTOTA ISSUB C AT EGO RY SUBT


K AT EGO RI SUB C AT EGO RY L OTA L TOTA L QT Y

True True 60398

Aksesuarlar False True 36092

Aksesuarlar Bisiklet Taşıyıcıları False False 328

Bisikletler Dağ Bisikletleri False False 4970

Kıyafet False True 9101

Birden çok alt toplam

SUMMARIZECOUMNS ( Regions[State], ROLLUPADDISSUBTOTAL ( Sales[CustomerId], "IsCustomerSubtotal" ),


ROLLUPADDISSUBTOTAL ( Sales[Date], "IsDateSubtotal"), "Total Qty", SUM( Sales[Qty] ) )

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ç

ISC USTO M ERSUB


C USTO M ERID TOTA L DURUM TOTA L QT Y TA RIH ISDAT ESUBTOTA L

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

ROLLUPADDISSUBTOTAL( ROLLUPGROUP(…), isSubtotal_columnName[, <groupBy_columnName>…] )

Parametreler
T ERIM TA N IM

groupBy_columnName İçinde bulunan değerlere göre özet grupları oluşturmak için


kullanılacak olan var olan bir sütunun tam adı.
ROLLUPGROUP işlevine sağlanan gruplandırma ölçütü sütunu
kümesi, alt toplam satırı döndürmek için ayrıntı düzeyini
tanımlar (ROLLUP ve ROLLUPGROUP işlevlerinin SUMMARIZE
işleviyle birlikte kullanıldığı durum gibi). Bu parametre bir ifade
olamaz.

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

SUMMARIZECOLUMNS( ROLLUPADDISSUBTOTAL( Sales[CustomerId], "IsCustomerSubtotal" ),


ROLLUPADDISSUBTOTAL(ROLLUPGROUP(Regions[City], Regions[State]), “IsCityStateSubtotal”),"Total Qty", SUM(
Sales[Qty] ) )

Yine Şehir ve Eyalet ile gruplanmıştır ancak alt toplam bildirilirken bir araya toplanır.
Sonuç

ISC USTO M ERSUB ISC IT Y STAT ESUBT


DURUM C USTO M ERID TOTA L TOTA L QT Y Ş EH IR OTA L

WA A FALSE 2 Bellevue FALSE

WA B FALSE 2 Bellevue FALSE

WA A FALSE 3 Redmond FALSE

WA B FALSE 1 Redmond FALSE

OR C FALSE 3 Portland FALSE

WA TRUE 4 Bellevue FALSE

WA TRUE 4 Redmond FALSE

OR TRUE 3 Portland FALSE

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

scalarExprN Skaler bir değer döndüren herhangi bir DAX ifadesi.

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

EVALUATE { (1), (2), (3) }

Tek sütundan oluşan şu tabloyu döndürür:

[ 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")
}

[ DE ĞER1] [ DE ĞER2] [ DE ĞER3] [ DE ĞER4]

1,5 01.01.2017 199,99 A

Satır2 02.01.2017 249,99 B

Satır3 03.01.2017 299,99 C

Örnek 3
Aşağıdaki DAX işlevi:

EVALUATE { 1, DATE(2017, 1, 1), TRUE, "A" }

Dize veri türüne sahip olan şu tek sütunlu tabloyu döndürür:

[ 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

tablo_ifadesi Bir tablo sonucu veren ifadedir.

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

Bir çift tablodan birleşim (birleştirme) tablosu oluşturur.

Sözdizimi
UNION(<table_expression1>, <table_expression2> [,<table_expression>]…)

Parametreler
T ERIM TA N IM

tablo_ifadesi Tablo döndüren bir DAX ifadesi.

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.

Sütunlar ilgili tablolardaki konumlarına göre birleştirilir.


Döndürülen tablodaki sütun adları, tablo_ifadesi1 içindeki sütun adlarıyla eşleşir.
Yinelenen satırlar korunur.
Döndürülen tablo veri kökenini mümkün olduğunca korur. Örneğin her bir tablo_ifadesi değerinin ilk sütununda
modeldeki C1 temel sütunu köken olarak belirlenmişse UNION içindeki ilk sütunun kökeni de C1 olur. Ancak
birleşik sütunlar farklı temel sütunları köken olarak belirlemişse veya uzantı sütunu varsa UNION içindeki sütunda
köken olmaz.
Veri türleri farklı olduğunda sonuçta elde edilen veri türü, veri türü birleştirme kurallarına göre belirlenir.
Döndürülen tablo, ilişkili tablolardaki sütunları içermez.

Ö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

PATH 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.

PATHCONTAINS Belirtilen öğe, belirtilen yol içinde yer alıyorsa TRUE döndürür.

PATHITEM Bir PATH işlevinin değerlendirilmesinden alınan bir dizeden,


belirtilen konumdaki öğeyi döndürür.

PATHITEMREVERSE Bir PATH işlevinin değerlendirilmesinden alınan bir dizeden,


belirtilen konumdaki öğeyi 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.

DAX içindeki üst-alt öğe işlevleri


Aşağıdaki tabloda şu sütunlara uygulanmış bir üst-alt hiyerarşisi bulunmaktadır: Tüm işlev örneklerinde kullanılan
EmployeeKey ve ParentEmployeeKey sütunları.

EM P LO Y EEK EY PA REN T EM P LO Y EEK EY

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

117 162 112|14|3|162|117

221 162 112|14|3|162|221

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.

EM P LO Y EEK EY PA REN T EM P LO Y EEK EY YOL PAT H L EN GT H

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

117 162 112|14|3|162|117 5

221 162 112|14|3|162|221 5

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

162 3 112|14|3|162 162

117 162 112|14|3|162|117 162

221 162 112|14|3|162|221 162

81 162 112|14|3|162|81 162

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

117 162 112|14|3|162|117 3

221 162 112|14|3|162|221 3

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

112 112 FALSE

14 112 112|14 FALSE

3 14 112|14|3 FALSE

11 3 112|14|3|11 FALSE

13 3 112|14|3|13 FALSE

162 3 112|14|3|162 TRUE

117 162 112|14|3|162|117 TRUE


PATH
8.05.2020 • 4 minutes to read

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

ID_columnName Tablodaki satırların benzersiz tanımlayıcısını içeren var olan bir


sütunun adı. Bu bir ifade olamaz. ID_columnName değerinin
veri türü metin veya tamsayı olmalıdır. Ayrıca
parent_columnName içinde başvurulan sütunla aynı veri
türünde olmalıdır.

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

Belirtilen öğe, belirtilen yol içinde yer alıyorsa TRUE döndürür.

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.

=PATHCONTAINS(PATH(Employee[EmployeeKey], Employee[ParentEmployeeKey]), "23")


PATHITEM
8.05.2020 • 2 minutes to read

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:

Sabit listesi Alternatif sabit listesi Açıklama

TEXT 0 Sonuçlar metin veri türüyle döndürülür.


(varsayılan).

TAMSAYI 1 Sonuçlar tamsayı olarak döndürülür.

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:

Sabit listesi Alternatif sabit listesi Açıklama

TEXT 0 Sonuçlar metin veri türüyle döndürülür.


(varsayılan)

TAMSAYI 1 Sonuçlar tamsayı veri türüyle


döndürülür.

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

yol Bir PATH işlevinin değerlendirilmesinden elde edilen bir metin


ifadesi.

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

ADDCOLUMNS Hesaplanan sütunları verilen tabloya veya tablo ifadesine


ekler.

APPROXIMATEDISTINCTCOUNT Sütundaki benzersiz değer içeren yaklaşık satır sayısını


döndürür.

AVERAGE Sütundaki tüm sayıların ortalamasını (aritmetik ortalama)


döndürür.

AVERAGEA Sütundaki değerlerin ortalamasını (aritmetik ortalama)


döndürür.

AVERAGEX Bir tablo üzerinde değerlendirilen ifade kümesinin


ortalamasını (aritmetik ortalama) hesaplar.

BETA.DIST Beta dağıtımını döndürür.

BETA.INV Beta kümülatif olasılık yoğunluğu işlevinin (BETA.DIST) tersini


döndürür.

CHISQ.DIST Kikare dağıtımını döndürür.

CHISQ.DIST.RT Kikare dağıtımının sağ kuyruklu olasılığını döndürür.

CHISQ.INV Kikare dağılımının sol kuyruklu olasılığının tersini döndürür.

CHISQ.INV.RT Kikare dağılımının sağ kuyruklu olasılığının tersini döndürür.

CONFIDENCE.NORM Olasılık aralığı bir değer aralığıdır.

CONFIDENCE.T Öğrencinin t dağıtımını kullanarak popülasyon ortalaması


için güvenirlik aralığını döndürür.

COT Radyan cinsinden belirtilen bir açının kotanjantını döndürür.

COTH Hiperbolik bir açının hiperbolik kotanjantını döndürür.

COUNT Sütundaki sayı içeren hücrelerin sayısını belirler.


İŞ L EV A Ç IK L A M A

COUNTA Sütundaki boş olmayan hücrelerin sayısını belirler.

COUNTAX Bir ifadenin sonucunu tablo üzerinde değerlendirirken boş


olmayan sonuçların sayısını belirler.

COUNTBLANK Sütundaki boş hücreleri sayar.

COUNTROWS Belirtilen tablodaki veya bir ifade tarafından tanımlanan bir


tablodaki satırların sayısını belirler.

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.

CROSSJOIN 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.

DATATABLE Satır içi veri değerleri kümesi bildirmek için bir mekanizma
sağlar.

DISTINCTCOUNT Sütundaki farklı değerleri sayar.

DISTINCTCOUNTNOBLANK Sütundaki farklı değerleri sayar.

EXPON.DIST Üstel dağılımı döndürür.

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.

GEOMEAN Sütundaki sayıların geometrik ortalamasını döndürür.

GEOMEANX Bir tablodaki her satır için değerlendirilen ifadenin geometrik


ortalamasını döndürür.

MAX Sütundaki veya iki skaler ifade arasındaki en büyük sayısal


değeri döndürür.

MAXA Sütundaki en büyük değeri döndürür.

MAXX İfadeyi tablodaki her satır için değerlendirir ve en büyük


sayısal değeri döndürür.

MEDIAN Sütundaki sayıların ortanca değerini döndürür.

MEDIANX Bir tablodaki her satır için değerlendirilen ifadenin ortanca


değerini döndürür.

MIN Sütundaki veya iki skaler ifade arasındaki en küçük sayısal


değeri döndürür.
İŞ L EV A Ç IK L A M A

MINA Mantıksal değerler ve metin olarak gösterilen sayılar dahil


olmak üzere sütundaki en küçük değeri döndürür.

MINX Bir ifadenin, tablodaki her satır için hesaplanması sonucunda


elde edilen en küçük sayısal değeri döndürür.

NORM.DIST Belirtilen ortalama ve standart sapma için normal dağıtımı


döndürür.

NORM.INV Belirtilen ortalama ve standart sapma için normal birikmeli


dağıtımın tersidir.

NORM.S.DIST Standart normal dağıtımı döndürür (ortalaması sıfır ve


standart sapması birdir).

NORM.S.INV Standart normal kümülatif dağıtımın tersini döndürür.

PERCENTILE.EXC 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.

PERCENTILE.INC 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.

PERCENTILEX.EXC Bir tablodaki her satır için değerlendirilen ifadenin


yüzdebirlik değerini döndürür.

PERCENTILEX.INC Bir tablodaki her satır için değerlendirilen ifadenin


yüzdebirlik değerini döndürür.

POISSON.DIST Poisson dağılımını döndürür.

RANK.EQ Sayı listesindeki bir sayının sıralamasını döndürür.

RANKX 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.

ROW 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.

SAMPLE Belirtilen tablodan N satırlık bir örnek döndürür.

SELECTCOLUMNS Hesaplanan sütunları verilen tabloya veya tablo ifadesine


ekler.

SIN Verilen açının sinüsünü döndürür.

SINH Bir sayının hiperbolik sinüsünü döndürür.

STDEV.P Popülasyonun tamamının standart sapmasını döndürür.

STDEV.S Örnek popülasyonun standart sapmasını döndürür.


İŞ L EV A Ç IK L A M A

STDEVX.P Popülasyonun tamamının standart sapmasını döndürür.

STDEVX.S Örnek popülasyonun standart sapmasını döndürür.

SQRTPI (sayı * pi) kare kökünü döndürür.

SUMMARIZE Gruplar kümesinin üzerinde istenen toplamlar için bir özet


tablosu döndürür.

T.DIST Öğrencinin sol kuyruklu t dağıtımını döndürür.

T.DIST.2T Öğrencinin iki kuyruklu t dağıtımını döndürür.

T.DIST.RT Sağ kuyruklu Öğrencinin t dağıtımını döndürür.

T.INV Öğrencinin t dağıtımının sol kuyruklu tersini döndürür.

T.INV.2t Öğrencinin t dağılımının iki kuyruklu tersini döndürür.

TAN Verilen açının tanjantını döndürür.

TANH Bir sayının hiperbolik tanjantını döndürür.

TOPN Belirtilen tablonun ilk N satırını döndürür.

VAR.P Tüm popülasyonun varyansını döndürür.

VAR.S Örnek popülasyonun varyansını döndürür.

VARX.P Tüm popülasyonun varyansını döndürür.

VARX.S Örnek popülasyonun varyansını döndürür.

XIRR Periyodik olması gerekmeyen nakit akışları planı için dahili


geri dönüş oranını döndürür.

XNPV Periyodik olması gerekmeyen nakit akışları planı için mevcut


değeri döndürür.
ADDCOLUMNS
8.05.2020 • 2 minutes to read

Hesaplanan sütunları verilen tabloya veya tablo ifadesine ekler.

Söz dizimi
ADDCOLUMNS(<table>, <name>, <expression>[, <name>, <expression>]…)

Parametreler
T ERIM TA N IM

tablo Bir veri tablosu döndüren herhangi bir DAX ifadesi.

name Sütuna verilen ad, çift tırnak içine alınmış.

ifade tablonun her satırı için değerlendirilen ve skaler ifade


döndüren herhangi bir DAX ifadesi.

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] ]

Bisikletler 1 1 25107749,77 63084675,04

Bileşenler 2 2 11205837,96

Kıyafet 3 3 306157,5829 1669943,267


Aksesuarlar 4 4 640920,1338 534301,9888
APPROXIMATEDISTINCTCOUNT
8.05.2020 • 2 minutes to read

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

sütun Sayılacak değerleri içeren sütun. Bu bir ifade olamaz.

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ütundaki tüm sayıların ortalamasını (aritmetik ortalama) döndürür.

Söz dizimi
AVERAGE(<column>)

Parametreler
T ERIM TA N IM

sütun Ortalamasını bulmak istediğiniz sayıları içeren sütun.

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

sütun Ortalamasını bulmak istediğiniz değerleri içeren sütun.

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

0000125 yok 0 sayılır


İŞ L EM K IM L I ĞI M IK TA R SO N UÇ

0000126 0 sayılır

0000126 TRUE 1 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

tablo Bir tablonun adı veya toplamanın gerçekleştirilebileceği


tabloyu belirten bir ifade.

ifade İlk bağımsız değişkendeki tablonun her satırı için


değerlendirilecek olan skaler sonuç içeren bir ifade.

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.

=AVERAGEX(InternetSales, InternetSales[Freight]+ InternetSales[TaxAmt])

İ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

x A ve B arasında bulunan, işlevin değerlendirileceği değer.

Alfa Dağıtımın bir parametresi.

Beta Dağıtımın bir parametresi.

A İsteğe bağlıdır. x aralığına yönelik alt sınır.

B İsteğe bağlıdır. x aralığına yönelik üst sınır.

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

Beta kümülatif olasılık yoğunluğu işlevinin (BETA.DIST) tersini döndürür.


Olasılık = BETA.DIST(x,...TRUE) ise, BETA.INV(olasılık,...) = x. Beta dağıtımı, belirli bir tamamlanma süresi ve
değişkenlik için olası tamamlanma sürelerini modellemek için proje planlamasında kullanılabilir.

Sözdizimi
BETA.INV(probability,alpha,beta,[A],[B])

Parametreler
T ERIM TA N IM

Olasılık Beta dağılımı ile ilişkili bir olasılık.

Alfa Dağıtımın bir parametresi.

Beta Dağıtımın bir parametresi.

A İsteğe bağlıdır. x aralığına yönelik alt sınır.

B İsteğe bağlı. x aralığına yönelik üst sınır.

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

Kikare dağıtımını döndürür.


Kikare dağılımı genellikle, insanların gün içerisinde televizyon izledikleri sürenin güne oranı gibi, bir şeyin örnekler
içindeki yüzdesinde görülen değişimleri araştırmak üzere kullanılır.

Söz dizimi
CHISQ.DIST(<x>, <deg_freedom>, <cumulative>)

Parametreler
T ERIM TA N IM

x Dağıtımı değerlendirmek istediğiniz değer.

Deg_freedom Serbestlik derecelerinin sayısı.

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

EVALUATE { CHISQ.DIST(2, 2, TRUE) }

Şunu döndürür:

[ DE ĞER]

0.632120558828558
CHISQ.DIST.RT
15.05.2020 • 2 minutes to read

Kikare dağıtımının sağ kuyruklu olasılığını döndürür.


Kikare dağıtımı bir kikare testiyle ilişkilidir. Gözlemlenen ve beklenen değerleri karşılaştırmak için kikare testini
kullanın. Örneğin, bir genetik deney bazı bitkilerin yüzeylerinin sonraki nesillerde belirli renklerde olacağını
varsayabilir. Gözlemlenen sonuçlarla beklenen sonuçları karşılaştırarak asıl varsayımınızın geçerli olup olmadığını
belirleyebilirsiniz.

Söz dizimi
CHISQ.DIST.RT(<x>, <deg_freedom>)

Parametreler
T ERIM TA N IM

x Dağıtımı değerlendirmek istediğiniz değer.

Deg_freedom Serbestlik derecelerinin sayısı.

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

Kikare dağılımının sol kuyruklu olasılığının tersini döndürür.


Kikare dağılımı genellikle, insanların gün içerisinde televizyon izledikleri sürenin güne oranı gibi, bir şeyin örnekler
içindeki yüzdesinde görülen değişimleri araştırmak üzere kullanılır.

Sözdizimi
CHISQ.INV(probability,deg_freedom)

Parametreler
T ERIM TA N IM

Olasılık Bir kikare dağılımı ile ilişkili olasılık.

Deg_freedom Serbestlik derecelerinin sayısı.

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 &lt; 0 veya olasılık &gt; 1 ise CHISQ.INV, #NUM! hata değerini döndürür.
deg_freedom tamsayı değilse yuvarlanır.
deg_freedom &lt; 1 veya deg_freedom &gt; 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Ç

=CHISQ.INV(0.93,1) 0,93 için 1 derece serbestlik ile kikare 5,318520074


dağılımının sol kuyruklu olasılığının tersi.

=CHISQ.INV(0.6,2) 0,6 için 2 derece serbestlik ile kikare 1,832581464


dağılımının sol kuyruklu olasılığının tersi.
CHISQ.INV.RT
8.05.2020 • 2 minutes to read

Kikare dağılımının sağ kuyruklu olasılığının tersini döndürür.


Olasılık = CHISQ.DIST.RT(x,...) ise CHISQ.INV.RT(olasılık,...) = x olur. Orijinal varsayımınızın geçerli olup olmadığına
karar vermek üzere gözlenen sonuçlarla beklenen sonuçları karşılaştırmak için bu işlevi kullanın.

Sözdizimi
CHISQ.INV.RT(probability,deg_freedom)

Parametreler
T ERIM TA N IM

Olasılık Bir kikare dağılımı ile ilişkili olasılık.

Deg_freedom Serbestlik derecelerinin sayısı.

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

alfa Güvenirlik düzeyini hesaplamak için kullanılan anlamlılık düzeyi.


Anlamlılık düzeyi 100*(1 - alfa)% değerine eşittir; bir başka
deyişle, 0,05 değerindeki bir alfa, anlamlılık düzeyinin yüzde
95'ini ifade eder.

standard_dev Bilinen olarak varsayılan veri aralığı için popülasyon standart


sapması.

standard_dev,size Örnek boyutu.

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

Öğrencinin t dağıtımını kullanarak popülasyon ortalaması için güvenirlik aralığını döndürür.

Söz dizimi
CONFIDENCE.T(alpha,standard_dev,size)

Parametreler
T ERIM TA N IM

alfa Güvenirlik düzeyini hesaplamak için kullanılan anlamlılık düzeyi.


Anlamlılık düzeyi 100*(1 - alfa)% değerine eşittir; bir başka
deyişle, 0,05 değerindeki bir alfa, anlamlılık düzeyinin yüzde
95'ini ifade eder.

standard_dev Bilinen olarak varsayılan veri aralığı için popülasyon standart


sapması.

boyut Örnek boyutu.

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Ç

=CONFIDENCE.T(0.05,1,50) Örnek boyutu 50, önem düzeyi %5, 0,284196855


standart sapma değeri ise 1 olan bir
popülasyon için ortalama olasılık aralığı.
Bu, Öğrencinin t dağıtımını temel alır.
COT
15.05.2020 • 2 minutes to read

Radyan cinsinden belirtilen bir açının kotanjantını döndürür.

Söz dizimi
COT (<number>)

Parametreler
T ERIM TA N IM

sayı Radyan cinsinden kotanjantını istediğiniz açı.

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

Hiperbolik bir açının hiperbolik kotanjantını döndürür.

Söz dizimi
COTH (<number>)

Parametreler
T ERIM TA N IM

sayı Hiperbolik kotanjantını istediğiniz radyanlardaki hiperbolik açı.

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

sütun Sayılacak değerleri içeren sütun.

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.

Boş değerler atlanır. TRUE/FALSE değerleri desteklenmez.


TRUE/FALSE değerlerinden oluşan bir sütunu değerlendirmek isterseniz COUNTA işlevini kullanın.

Ö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

COUNTA işlevi, sütundaki boş olmayan hücrelerin sayısını belirler.

Söz dizimi
COUNTA(<column>)

Parametreler
T ERIM TA N IM

sütun Sayılacak değerleri içeren sütun.

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

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

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ütundaki boş hücreleri sayar.

Söz dizimi
COUNTBLANK(<column>)

Parametreler
T ERIM TA N IM

sütun Sayılacak boş hücreleri içeren sütun.

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))

Aşağıdaki tabloda beklenen sonuçların bir bölümü gösterilmektedir:


RESEL L ERK EY C A L C UL AT EDC O L UM N 1

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

tablo Sayılacak satırları içeren tablo.

ifade Saymak istediğiniz değerleri içeren değer kümesini döndüren


bir ifade.

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

tablo Bir veri tablosu döndüren herhangi bir DAX ifadesi.

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

Red Yatay Şerit

Yeşil Dikey Şerit

Mavi Çapraz Çizgiler

Stationer y tablosunda yazı tipleri ve sunum şekilleri vardır:


YA Z I T IP I SUN UM

tırnaklı kabartma

tırnaksız oyma

Çapraz birleşim oluşturacak ifade aşağıda verilmiştir:

CROSSJOIN( Colors, Stationery)

Yukarıdaki ifade bir tablo ifadesi beklendiğinde kullanılır ancak ifadenin sonuçları şu şekilde olur:

REN K DESEN YA Z I T IP I SUN UM

Red Yatay Şerit tırnaklı kabartma

Yeşil Dikey Şerit tırnaklı kabartma

Mavi Çapraz Çizgiler tırnaklı kabartma

Red Yatay Şerit tırnaksız oyma

Yeşil Dikey Şerit tırnaksız oyma

Mavi Çapraz Çizgiler tırnaksız oyma


DISTINCTCOUNT
8.05.2020 • 2 minutes to read

Sütundaki farklı değerleri sayar.

Sözdizimi
DISTINCTCOUNT(<column>)

Parametreler
SÜRE A Ç IK L A M A

sütun Sayılacak değerleri içeren sütun.

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:

|**Distinct Reseller Orders count**|**Column Labels**||||||


|-|-|-|-|-|-|-|
|**Row Labels**|**Accessories**|**Bikes**|**Clothing**|**Components**||**Grand Total**|
|2005|135|345|242|205||366|
|2006|356|850|644|702||1015|
|2007|531|1234|963|1138||1521|
|2008|293|724|561|601||894|
||||||1|1|
|**Grand Total**|**1315**|**3153**|**2410**|**2646**|**1**|**3797**|

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 &#40;DAX&#41;](count-function-dax.md)
[COUNTA function &#40;DAX&#41;](counta-function-dax.md)
[COUNTAX function &#40;DAX&#41;](countax-function-dax.md)
[COUNTX function &#40;DAX&#41;](countx-function-dax.md)
[Statistical functions &#40;DAX&#41;](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

x Gereklidir. İşlevin değeri.

lambda Gereklidir. Parametre değeri.

kümülatif Gereklidir. Hangi formda bir üstel fonksiyonun sağlanacağını


ifade eden mantıksal bir değer. Kümülatif TRUE ise,
EXPON.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
Ü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:

Kümülatif dağıtım işlevinin denklemi şöyledir:


GENERATE
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özdizimi
GENERATE(<table1>, <table2>)

Parametreler
T ERIM TA N IM

tablo1 Tablo döndüren bir DAX ifadesi.

tablo2 Tablo döndüren bir DAX ifadesi.

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:

SalesTerritory[SalesTerritoryGroup] ProductCategory[ProductCategoryNam [Bayi Satışları]


e]

Avrupa Aksesuarlar $ 142.227,27

Avrupa Bisikletler $ 9.970.200,44

Avrupa Kıyafet $ 365.847,63

Avrupa Bileşenler $ 2.214.440,19


Kuzey Amerika Aksesuarlar $ 379.305,15

Kuzey Amerika Bisikletler $ 52.403.796,85

Kuzey Amerika Kıyafet $ 1.281.193,26

Kuzey Amerika Bileşenler $ 8.882.848,05

Pasifik Aksesuarlar $ 12.769,57

Pasifik Bisikletler $ 710.677,75

Pasifik Kıyafet $ 22.902,38

Pasifik Bileşenler $ 108.549,71

Aşağıdaki kod, yukarıdaki tabloyu oluşturur:

GENERATE(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)

1. İlk SUMMARIZE deyimi olan SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup]) , aşağıda


gösterildiği gibi her satırın bir bölge grubu olduğu bir bölge grubu tablosu oluşturur:

SA L EST ERRITO RY [ SA L EST ERRITO RY GRO UP ]

Kuzey Amerika

Avrupa

Pasifik

NA

2. İkinci SUMMARIZE deyimi olan


SUMMARIZE(ProductCategory, [ProductCategoryName], "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD),
ResellerSales_USD[SalesAmount_USD]))
, aşağıda gösterildiği gibi her gruba ait Bayi satışlarını içeren bir Ürün Kategorisi grubu tablosu oluşturur:

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]

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

tablo1 Tablo döndüren bir DAX ifadesi.

tablo2 Tablo döndüren bir DAX ifadesi.

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:

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]

Avrupa Aksesuarlar $ 142.227,27

Avrupa Bisikletler $ 9.970.200,44

Avrupa Kıyafet $ 365.847,63

Avrupa Bileşenler $ 2.214.440,19

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

Kuzey Amerika Aksesuarlar $ 379.305,15

Kuzey Amerika Bisikletler $ 52.403.796,85

Kuzey Amerika Kıyafet $ 1.281.193,26

Kuzey Amerika Bileşenler $ 8.882.848,05

Pasifik Aksesuarlar $ 12.769,57

Pasifik Bisikletler $ 710.677,75

Pasifik Kıyafet $ 22.902,38

Pasifik Bileşenler $ 108.549,71

Aşağıdaki kod, yukarıdaki tabloyu oluşturur:

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:

SA L EST ERRITO RY [ SA L EST ERRITO RY GRO UP ]

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:

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]

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ütundaki sayıların geometrik ortalamasını döndürür.


Bir tablodaki her satır için değerlendirilen bir ifadenin geometrik ortalamasını döndürmek için GEOMEANX işlevini
(DAX) kullanın.

Sözdizimi
GEOMEAN(<column>)

Parametreler
T ERIM TA N IM

sütun Geometrik ortalamanın hesaplanacağı sayıları içeren sütun.

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

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

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:

=GEOMEANX( Investments, Investments[ReturnPct] + 1 )

Ayrıca bkz.
GEOMEAN işlevi (DAX)
MAX
8.05.2020 • 2 minutes to read

Sütundaki veya iki skaler ifade arasındaki en büyük değeri döndürür.

Sözdizimi
MAX(<column>)

MAX(<expression1>, <expression2>)

Parametreler
T ERIM TA N IM

sütun İçindeki en büyük değeri bulmak istediğiniz sütun.

ifade Tek bir değer döndüren DAX ifadesi.

Özellik Değeri/Döndürülen Değer


En büyük değer.

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ütundaki en büyük değeri döndürür.

Sözdizimi
MAXA(<column>)

Parametreler
T ERIM TA N IM

sütun İçindeki en büyük değeri bulmak istediğiniz sütun.

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

İfadeyi tablodaki her satır için değerlendirir ve en büyük değeri döndürür.

Sözdizimi
MAXX(<table>,<expression>)

Parametreler
T ERIM TA N IM

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

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.

=MAXX(InternetSales, InternetSales[TaxAmt]+ InternetSales[Freight])

Ö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ütundaki sayıların ortanca değerini döndürür.


Bir tablodaki her satır için değerlendirilen bir ifadenin ortanca değerini döndürmek için MEDIANX işlevini (DAX)
kullanın.

Sözdizimi
MEDIAN(<column>)

Parametreler
T ERIM TA N IM

sütun Ortanca değerin hesaplanacağı sayıları içeren sütun.

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

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

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.

=MEDIANX( FILTER(Customers, RELATED( Geography[Country]=”USA” ) ), Customers[Age] )

Ayrıca bkz.
MEDIAN işlevi (DAX)
MIN
8.05.2020 • 2 minutes to read

İki skaler ifade arasındaki en küçük sütun değerini döndürür.

Söz dizimi
MIN(<column>)

MIN(<expression1>, <expression2>)

Parametreler
T ERIM TA N IM

sütun En küçük değerini bulmak istediğiniz sütun.

ifade Tek bir değer döndüren DAX ifadesi.

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ütundaki en küçük değeri döndürür.

Sözdizimi
MINA(<column>)

Parametreler
T ERIM TA N IM

sütun En küçük değerini bulmak istediğiniz sütun.

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

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

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.

=MINX( FILTER(InternetSales, [SalesTerritoryKey] = 5),[Freight])

Ö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.

=MINX( FILTER(InternetSales, InternetSales[SalesTerritoryKey] = 5), InternetSales[Freight] +


InternetSales[TaxAmt])

İ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

Belirtilen ortalama ve standart sapma için normal dağıtımı döndürür.

Söz dizimi
NORM.DIST(X, Mean, Standard_dev, Cumulative)

Parametreler
T ERIM TA N IM

X Dağıtım için istediğiniz değer.

Ortalama Dağıtımın aritmetik ortalaması.

Standard_dev Dağıtımın standart sapması.

Kümülatif* İşlevin biçimi belirleyen mantıksal bir değer. Kümülatif TRUE


ise, NORM.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
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

Belirtilen ortalama ve standart sapma için normal birikmeli dağıtımın tersidir.

Söz dizimi
NORM.INV(Probability, Mean, Standard_dev)

Parametreler
T ERIM TA N IM

Olasılık Normal dağıtıma karşılık gelen bir olasılık.

Ortalama Dağıtımın aritmetik ortalaması.

Standard_dev Dağıtımın standart sapması.

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

Standart normal dağıtımı döndürür (ortalaması sıfır ve standart sapması birdir).

Söz dizimi
NORM.S.DIST(Z, Cumulative)

Parametreler
T ERIM TA N IM

Z Dağıtım için istediğiniz değer.

Kümülatif Kümülatif, işlevin biçimi belirleyen mantıksal bir değerdir.


Kümülatif TRUE ise, NORM.S.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
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

Olasılık Normal dağıtıma karşılık gelen bir olasılık.

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

sütun Göreli konumu tanımlayan değerleri içeren bir sütun.

k 0 ile 1 (ikisi hariç) aralığındaki yüzdebirlik değer.

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

sütun Göreli konumu tanımlayan değerleri içeren bir sütun.

k 0 ile 1 (ikisi dahil) aralığındaki yüzdebirlik değer.

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

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

k 0-1 (hariç) aralığında istenen yüzdebirlik değeri.

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

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

k 0-1 (dahil) aralığında istenen yüzdebirlik değeri.

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

sayı Gereklidir. Nesne sayısını açıklayan bir tam sayı.

number_chosen Gereklidir. Her bir permütasyondaki nesne sayısını açıklayan bir


tam sayı.

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Ç

=PERMUT(3,2) 3 nesneden oluşan bir grupta ikisinin 6


seçildiği permütasyonların olasılığı.
POISSON.DIST
8.05.2020 • 2 minutes to read

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

x Gereklidir. Olay sayısı.

ortalama Gereklidir. Beklenen sayı değeri.

kümülatif Gereklidir. Döndürülen olasılık dağılımının formunu belirleyen


mantıksal bir değer. Kümülatif TRUE ise, POISSON.DIST,
gerçekleşen rastgele olayların sayısının sıfır ile x (dahil) arasında
olacağını belirten kümülatif Poisson olasılığını döndürür; FALSE
ise, gerçekleşen rastgele olayların sayısının tam olarak x
olacağını belirten Poisson olasılığı kütle fonksiyonunu
döndürür.

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:

Kümülatif = TRUE için:


RANK.EQ
8.05.2020 • 2 minutes to read

Sayı listesindeki bir sayının sıralamasını döndürür.

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:

de ğer alternatif de ğer Açıklama

0 (sıfır) FALSE columnName azalan düzende sıralanır.


değer, columnName içindeki en yüksek
sayıya eşitse RANK.EQ , 1 olur.

1 TRUE columnName artan düzende sıralanır.


değer, columnName içindeki en düşük
sayıya eşitse RANK.EQ , 1 olur.

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:

değer alternatif değer Açıklama

0 (sıfır) FALSE İfadenin değerlerini azalan düzende


sıralar. Değer, ifadedeki en yüksek sayıya
eşitse RANKX işlevi 1 değerini döndürür.

sırala parametresi atlandığında


kullanılan varsayılan değer budur.

1 TRUE İfadenin değerlerini artan düzende


sıralar. Değer, ifadedeki en düşük sayıya
eşitse RANKX işlevi 1 değerini döndürür.

eşdeğerler
(İsteğe bağlı) Eşdeğerler olduğunda sıralamanın nasıl belirleneceğini tanımlayan bir sabit listesi.

sabit listesi Açıklama


Atla Eşdeğerden sonraki sıralama değeri, eşdeğerin sıralama değeri
artı eşdeğer değerlerin sayısıdır. Örneğin 11 sıralaması ile bağlı
beş (5) değer varsa bir sonraki değere 16 (11 + 5) sıralaması
verilir.

eşdeğerler parametresi atlandığında kullanılan varsayılan değer


budur.

Yoğun Eşdeğerden sonraki sıralama değeri, sonraki sıralama değeridir.


Örneğin 11 sıralaması ile bağlı beş (5) değer varsa bir sonraki
değere 12 sıralaması verilir.

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.

=RANKX(ALL(Products), SUMX(RELATEDTABLE(InternetSales), [SalesAmount]))


ROW işlevi
8.05.2020 • 2 minutes to read

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

ad Sütuna verilen ad, çift tırnak içine alınmış.

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.

ROW("Internet Total Sales (USD)", SUM(InternetSales_USD[SalesAmount_USD]),


"Resellers Total Sales (USD)", SUM(ResellerSales_USD[SalesAmount_USD]))

Daha rahat okunabilmesi amacıyla kod iki satıra bölünmüştür.


SAMPLE
9.05.2020 • 2 minutes to read

Belirtilen tablodan N satırlık bir örnek 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):

value alternatif de ğer Açıklama

0 (sıfır) FALSE sıralama_ölçütü değerlerini azalan


düzende sıralar.

sırala parametresi atlandığında


kullanılan varsayılan değer budur.

1 TRUE sıralama_ölçütü değerlerini artan


düzende sıralar.

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

Hesaplanan sütunları verilen tabloya veya tablo ifadesine ekler.

Söz dizimi
SELECTCOLUMNS(<table>, <name>, <scalar_expression> [, <name>, <scalar_expression>]…)

Parametreler
T ERIM TA N IM

tablo Tablo döndüren bir DAX ifadesi.

name Sütuna verilen ad, çift tırnak içine alınmış.

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

Amerika Birleşik Devletleri CA 5 500

Amerika Birleşik Devletleri WA 10 900


SELECTCOLUMNS(Info, “StateCountry”, [State]&”, ”&[Country])

Ş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

Verilen açının sinüsünü döndürür.

Sözdizimi
SIN(number)

Parametreler
T ERIM TA N IM

number Gereklidir. Radyan cinsinden sinüsünü istediğiniz açı.

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Ç

=SIN(PI()) Pi sayısının radyan cinsinden sinüsü 0,0


(yaklaşık 0).

=SIN(PI()/2) Pi/2 değerinin radyan cinsinden sinüsü. 1.0

=SIN(30*PI()/180) 30 derecenin sinüsü. 0,5

=SIN(RADIANS(30)) 30 derecenin sinüsü. 0,5


SINH
8.05.2020 • 2 minutes to read

Bir sayının hiperbolik sinüsünü döndürür.

Söz dizimi
SINH(number)

Parametreler
T ERIM TA N IM

sayı Gereklidir. Herhangi bir gerçek sayı.

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Ç

=2,868*SINH(0,0342*1,03) 1,03 saniyeden kısa sürede sonuç elde 0,1010491


etme olasılığı.
STDEV.S
9.05.2020 • 2 minutes to read

Örnek popülasyonun standart sapmasını döndürür.

Sözdizimi
STDEV.S(<ColumnName>)

Parametreler
T ERIM TA N IM

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı (genellikle tam ad kullanılır). Bu değer bir ifade
olamaz.

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

Popülasyonun tamamının standart sapmasını döndürür.

Sözdizimi
STDEV.P(<ColumnName>)

Parametreler
T ERIM TA N IM

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı (genellikle tam ad kullanılır). Bu değer bir ifade
olamaz.

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

Örnek popülasyonun standart sapmasını döndürür.

Söz dizimi
STDEVX.S(<table>, <expression>)

Parametreler
T ERIM TA N IM

tablo İfadenin birden fazla değerlendirileceği (her bir satır/bağlam


için) tek bir skaler değer döndüren DAX ifadesi.

ifade İfadenin birden fazla değerlendirileceği (her bir satır/bağlam


için) tek bir skaler değer döndüren DAX ifadesi.

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

Popülasyonun tamamının standart sapmasını döndürür.

Sözdizimi
STDEVX.P(<table>, <expression>)

Parametreler
T ERIM TA N IM

tablo İfadenin birden fazla değerlendirileceği (her bir satır/bağlam


için) tek bir skaler değer döndüren DAX ifadesi.

ifade İfadenin birden fazla değerlendirileceği (her bir satır/bağlam


için) tek bir skaler değer döndüren DAX ifadesi.

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

(sayı * pi) kare kökünü döndürür.

Sözdizimi
SQRTPI(number)

Parametreler
T ERIM TA N IM

number Gereklidir. Pi'nin çarpıldığı sayı.

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Ç

=SQRTPI(1) Pi'nin kare kökü. 1,772454

=SQRTPI(2) 2 * pi'nin kare kökü. 2,506628


SUMMARIZE
9.05.2020 • 9 minutes to read

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

tablo Bir veri tablosu döndüren herhangi bir DAX ifadesi.

groupBy_columnName (İsteğe bağlı) İçinde bulunan değerlere göre özet grupları


oluşturmak için kullanılacak olan var olan bir sütunun tam adı.
Bu parametre bir ifade olamaz.

name Toplam veya özet sütuna verilen ad, çift tırnak içine alınmış.

ifade İfadenin birden fazla değerlendirileceği (her bir satır/bağlam


için) tek bir skaler değer döndüren DAX ifadesi.

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:

P RO DUC TC AT EGO RY [ P RO DU [ DISC O UN T A M O UN T


DAT ET IM E[ C A L EN DA RY EA R] C TC AT EGO RY N A M E] [ SA L ES A M O UN T ( USD) ] ( USD) ]

2008 Bisikletler 12968255,42 36167,6592

2005 Bisikletler 6958251,043 4231,1621

2006 Bisikletler 18901351,08 178175,8399

2007 Bisikletler 24256817,5 276065,992

2008 Bileşenler 2008052,706 39,9266

2005 Bileşenler 574256,9865 0

2006 Bileşenler 3428213,05 948,7674

2007 Bileşenler 5195315,216 4226,0444

2008 Kıyafet 366507,844 4151,1235

2005 Kıyafet 31851,1628 90,9593

2006 Kıyafet 455730,9729 4233,039

2007 Kıyafet 815853,2868 12489,3835

2008 Aksesuarlar 153299,924 865,5945

2005 Aksesuarlar 18594,4782 4,293

2006 Aksesuarlar 86612,7463 1061,4872

2007 Aksesuarlar 275794,8403 4756,6546

Gelişmiş SUMMARIZE seçenekleri


SUMMARIZE ve ROLLUP
ROLLUP() söz diziminin eklenmesi, SUMMARIZE işlevinin davranışını değiştirerek groupBy_columnName
sütunlarının sonucuna toplu değer satırları eklemesini sağlar.

SUMMARIZE(<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, ROLLUP(<groupBy_columnName>[,<


groupBy_columnName>…])][, <name>, <expression>]…)
ROLLUP parametreleri
groupBy_columnName
İçinde bulunan değerlere göre özet grupları oluşturmak için kullanılacak olan var olan bir sütunun tam adı. Bu
parametre bir ifade olamaz.
Not : Diğer tüm SUMMARIZE parametreleri yukarıda açıklanmış olduğundan burada tekrarlanmamıştır.
Açıklamalar
ROLLUP ifadesinde bahsedilen sütunlara, groupBy_columnName sütunları ile birlikte başvuru yapılamaz.
Örnek
Aşağıdaki örnek, SUMMARIZE işlevi çağrısının Group-By sütunlarına toplama satırları ekler.

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:

P RO DUC TC AT EGO RY [ P RO DU [ DISC O UN T A M O UN T


DAT ET IM E[ C A L EN DA RY EA R] C TC AT EGO RY N A M E] [ SA L ES A M O UN T ( USD) ] ( USD) ]

2008 Bisikletler 12968255,42 36167,6592

2005 Bisikletler 6958251,043 4231,1621

2006 Bisikletler 18901351,08 178175,8399

2007 Bisikletler 24256817,5 276065,992

2008 Bileşenler 2008052,706 39,9266

2005 Bileşenler 574256,9865 0

2006 Bileşenler 3428213,05 948,7674

2007 Bileşenler 5195315,216 4226,0444

2008 Kıyafet 366507,844 4151,1235

2005 Kıyafet 31851,1628 90,9593

2006 Kıyafet 455730,9729 4233,039

2007 Kıyafet 815853,2868 12489,3835

2008 Aksesuarlar 153299,924 865,5945

2005 Aksesuarlar 18594,4782 4,293

2006 Aksesuarlar 86612,7463 1061,4872

2007 Aksesuarlar 275794,8403 4756,6546


P RO DUC TC AT EGO RY [ P RO DU [ DISC O UN T A M O UN T
DAT ET IM E[ C A L EN DA RY EA R] C TC AT EGO RY N A M E] [ SA L ES A M O UN T ( USD) ] ( USD) ]

2008 15496115,89 41224,3038

2005 7582953,67 4326,4144

2006 22871907,85 184419,1335

2007 30543780,84 297538,0745

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:

P RO DUC TC AT EGO RY [ P RO DU [ DISC O UN T A M O UN T


DAT ET IM E[ C A L EN DA RY EA R] C TC AT EGO RY N A M E] [ SA L ES A M O UN T ( USD) ] ( USD) ]

2008 Bisikletler 12968255,42 36167,6592

2005 Bisikletler 6958251,043 4231,1621

2006 Bisikletler 18901351,08 178175,8399

2007 Bisikletler 24256817,5 276065,992

2008 Bileşenler 2008052,706 39,9266

2005 Bileşenler 574256,9865 0

2006 Bileşenler 3428213,05 948,7674

2007 Bileşenler 5195315,216 4226,0444

2008 Kıyafet 366507,844 4151,1235

2005 Kıyafet 31851,1628 90,9593

2006 Kıyafet 455730,9729 4233,039


P RO DUC TC AT EGO RY [ P RO DU [ DISC O UN T A M O UN T
DAT ET IM E[ C A L EN DA RY EA R] C TC AT EGO RY N A M E] [ SA L ES A M O UN T ( USD) ] ( USD) ]

2007 Kıyafet 815853,2868 12489,3835

2008 Aksesuarlar 153299,924 865,5945

2005 Aksesuarlar 18594,4782 4,293

2006 Aksesuarlar 86612,7463 1061,4872

2007 Aksesuarlar 275794,8403 4756,6546

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.

SUMMARIZE(<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, ROLLUP(<groupBy_columnName>[,<


groupBy_columnName>…])][, <name>, {<expression>|ISSUBTOTAL(<columnName>)}]…)

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:

[ IS SUB TOTA L [ IS SUB TOTA L


FOR FOR P RO DUC TC AT EG
DAT ET IM EC A L EN P RO DUC TC AT EG DAT ET IM E[ C A L E O RY [ P RO DUC TC [ SA L ES A M O UN T [ DISC O UN T
DA RY EA R] O RY N A M E] N DA RY EA R] AT EGO RY N A M E] ( USD) ] A M O UN T ( USD) ]

FALSE FALSE

FALSE FALSE 2008 Bisikletler 12968255,42 36167,6592


[ IS SUB TOTA L [ IS SUB TOTA L
FOR FOR P RO DUC TC AT EG
DAT ET IM EC A L EN P RO DUC TC AT EG DAT ET IM E[ C A L E O RY [ P RO DUC TC [ SA L ES A M O UN T [ DISC O UN T
DA RY EA R] O RY N A M E] N DA RY EA R] AT EGO RY N A M E] ( USD) ] A M O UN T ( USD) ]

FALSE FALSE 2005 Bisikletler 6958251,043 4231,1621

FALSE FALSE 2006 Bisikletler 18901351,08 178175,8399

FALSE FALSE 2007 Bisikletler 24256817,5 276065,992

FALSE FALSE 2008 Bileşenler 2008052,706 39,9266

FALSE FALSE 2005 Bileşenler 574256,9865 0

FALSE FALSE 2006 Bileşenler 3428213,05 948,7674

FALSE FALSE 2007 Bileşenler 5195315,216 4226,0444

FALSE FALSE 2008 Kıyafet 366507,844 4151,1235

FALSE FALSE 2005 Kıyafet 31851,1628 90,9593

FALSE FALSE 2006 Kıyafet 455730,9729 4233,039

FALSE FALSE 2007 Kıyafet 815853,2868 12489,3835

FALSE FALSE 2008 Aksesuarlar 153299,924 865,5945

FALSE FALSE 2005 Aksesuarlar 18594,4782 4,293

FALSE FALSE 2006 Aksesuarlar 86612,7463 1061,4872

FALSE FALSE 2007 Aksesuarlar 275794,8403 4756,6546

FALSE TRUE

FALSE TRUE 2008 15496115,89 41224,3038

FALSE TRUE 2005 7582953,67 4326,4144

FALSE TRUE 2006 22871907,85 184419,1335

FALSE TRUE 2007 30543780,84 297538,0745

TRUE TRUE 76494758,25 527507,9262


T.DIST
8.05.2020 • 2 minutes to read

Öğrencinin sol kuyruklu t dağıtımını döndürür.

Sözdizimi
T.DIST(X,Deg_freedom,Cumulative)

Parametreler
T ERIM TA N IM

X Dağıtımın değerlendirildiği sayısal değer.

Deg_freedom Serbestlik derecesi sayısını belirten bir tamsayı.

Kümülatif İşlevin biçimi belirleyen mantıksal bir değer. Kümülatif TRUE


ise, T.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
Öğ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

Öğrencinin iki kuyruklu t dağıtımını döndürür.

Sözdizimi
T.DIST.2T(X,Deg_freedom)

Parametreler
T ERIM TA N IM

X Dağıtımın değerlendirildiği sayısal değer.

Deg_freedom Serbestlik derecesi sayısını belirten bir tamsayı.

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

Sağ kuyruklu Öğrencinin t dağıtımını döndürür.

Sözdizimi
T.DIST.RT(X,Deg_freedom)

Parametreler
T ERIM TA N IM

X Dağıtımın değerlendirildiği sayısal değer.

Deg_freedom Serbestlik derecesi sayısını belirten bir tamsayı.

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

Öğrencinin t dağıtımının sol kuyruklu tersini döndürür.

Sözdizimi
T.INV(Probability,Deg_freedom)

Parametreler
T ERIM TA N IM

Olasılık Öğrencinin t dağıtımı ile ilişkilendirilen olasılık.

Deg_freedom Dağıtımı niteleyen serbestlik derecesi sayısı.

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

Öğrencinin t dağılımının iki kuyruklu tersini döndürür.

Sözdizimi
T.INV.2T(Probability,Deg_freedom)

Parametreler
T ERIM TA N IM

Olasılık Öğrencinin t dağıtımı ile ilişkilendirilen olasılık.

Deg_freedom Dağıtımı niteleyen serbestlik derecesi sayısı.

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

Verilen açının tanjantını döndürür.

Sözdizimi
TAN(number)

Parametreler
T ERIM TA N IM

number Gereklidir. Radyan cinsinden tanjantını istediğiniz açı.

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Ç

=TAN(0,785) 0,785 radyanın tanjantı (0,99920) 0,99920

=TAN(45*PI()/180) 45 derecenin tanjantı (1) 1

=TAN(RADIANS(45)) 45 derecenin tanjantı (1) 1


TANH
8.05.2020 • 2 minutes to read

Bir sayının hiperbolik tanjantını döndürür.

Söz dizimi
TANH(number)

Parametreler
T ERIM TA N IM

sayı Gereklidir. Herhangi bir gerçek sayı.

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Ç

=TANH(-2) -2'nin hiperbolik tanjantı (-0,96403) -0,964028

=TANH(0) 0'ın hiperbolik tanjantı (0) 0

=TANH(0,5) 0,5'in hiperbolik tanjantı (0,462117) 0,462117


TOPN
9.05.2020 • 2 minutes to read

Belirtilen tablonun ilk N satırını döndürür.

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):

value alternatif de ğer Açıklama

0 (sıfır) FALSE sıralama_ölçütü değerlerini azalan


düzende sıralar.

sırala parametresi atlandığında


kullanılan varsayılan değer budur.

1 TRUE sıralama_ölçütü değerlerini artan


düzende sıralar.

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.

=SUMX(TOPN(10, SUMMARIZE(Product, [ProductKey], “TotalSales”,


SUMX(RELATED(InternetSales_USD[SalesAmount_USD]), InternetSales_USD[SalesAmount_USD]) +
SUMX(RELATED(ResellerSales_USD[SalesAmount_USD]), ResellerSales_USD[SalesAmount_USD]))
VAR.S
8.05.2020 • 2 minutes to read

Örnek popülasyonun varyansını döndürür.

Söz dizimi
VAR.S(<columnName>)

Parametreler
T ERIM TA N IM

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı (genellikle tam ad kullanılır). Bu değer bir ifade
olamaz.

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

Tüm popülasyonun varyansını döndürür.

Söz dizimi
VAR.P(<columnName>)

Parametreler
T ERIM TA N IM

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı (genellikle tam ad kullanılır). Bu değer bir ifade
olamaz.

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

Örnek popülasyonun varyansını döndürür.

Söz dizimi
VARX.S(<table>, <expression>)

Parametreler
T ERIM TA N IM

tablo Bir veri tablosu döndüren herhangi bir DAX ifadesi.

ifade İfadenin birden fazla değerlendirileceği (her bir satır/bağlam


için) tek bir skaler değer döndüren DAX ifadesi.

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

Tüm popülasyonun varyansını döndürür.

Söz dizimi
VARX.P(<table>, <expression>)

Parametreler
T ERIM TA N IM

tablo Bir veri tablosu döndüren herhangi bir DAX ifadesi.

ifade İfadenin birden fazla değerlendirileceği (her bir satır/bağlam


için) tek bir skaler değer döndüren DAX ifadesi.

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

tablo Değerlerin ve tarih ifadelerinin hesaplanması gereken tablo.

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.

tahmin (İsteğe bağlı) İç dönüş oranı için başlangıç tahmini. Atlanırsa,


varsayılan 0,1 tahmini kullanılır.

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:

Rate of return := XIRR( CashFlows, [Payment], [Date] )

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

Dönüş oranı = %37,49


XNPV
8.05.2020 • 2 minutes to read

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

tablo Değerlerin ve tarih ifadelerinin hesaplanması gereken tablo.

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:

Present value := XNPV( CashFlows, [Payment], [Date], 0.09 )

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

Mevcut değer = 2086,65


Metin işlevleri
21.05.2020 • 3 minutes to read

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

BLANK Boş değer döndürür.

CODE Bir metin dizesindeki ilk karakterin sayısal kodunu döndürür.

CONCATENATE İki metin dizesini tek bir metin dizesinde birleştirir.

CONCATENATEX Bir tablodaki her satır için değerlendirilen ifadenin sonucunu


birleştirir.

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.

EXACT İki metin dizesini karşılaştırır ve tamamen aynı olmaları


durumunda TRUE, aksi takdirde FALSE döndürür.

FIND Başka bir metin dizesinin içinde yer alan bir metin dizesinin
başlangıç konumunu döndürür.

FIXED Sayıyı belirtilen sayıda ondalık basamağa yuvarlar ve sonucu


metin olarak döndürür.

FORMAT Değeri, belirtilen biçime göre metne dönüştürür.

LEFT Metin dizesinin başından başlayarak belirtilen sayıda


karakteri döndürür.

LEN Metin dizesindeki karakterlerin sayısını döndürür.

LOWER Metin dizesindeki tüm harfleri küçük harfe dönüştürür.

MID Verilen konumdan başlamak üzere metnin ortasından verilen


uzunlukta bir karakter dizesi döndürür.

REPLACE REPLACE, bir metin dizesinin belirttiğiniz sayıda karaktere


sahip olan bölümünü başka bir metin dizesiyle değiştirir.
İŞ L EV A Ç IK L A M A

REPT Metni verilen sayıda yineler.

RIGHT RIGHT, belirttiğiniz karakter sayısına göre bir metin


dizesindeki son karakteri veya karakterleri 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.

SUBSTITUTE Varolan metni, bir metin dizesindeki yeni metinle değiştirir.

TRIM Kelimeler arasındaki tek boşluklar hariç olmak üzere bir


metindeki tüm boşlukları kaldırır.

UNICHAR Sayısal değerin başvurduğu Unicode karakterini döndürür.

UNICODE Metin dizesinin ilk karakterine karşılık gelen sayısal kodu


döndürür.

UPPER Metin dizesini tümüyle büyük harfe dönüştürür.

VALUE Bir sayıyı temsil eden metin dizesini sayıya dönüştürür.


BLANK
9.05.2020 • 2 minutes to read

Boş değer 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.

=IF( SUM(InternetSales_USD[SalesAmount_USD])= 0 , BLANK() ,


SUM(ResellerSales_USD[SalesAmount_USD])/SUM(InternetSales_USD[SalesAmount_USD]) )

Tablo, bu formül ile bir PivotTable oluşturulduğunda beklenen sonuçları göstermektedir.

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

Satır Etiketleri Aksesuarlar Bisikletler Kıyafet Genel Toplam

2005 2,65 2,89

2006 3,33 4,03

2007 1,04 2,92 6,63 3,51

2008 0,41 1,53 2,00 1,71

Genel Toplam 0,83 2,51 5,45 2,94

Ö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

Macintosh Macintosh karakter kümesi

Windows ANSI

Sözdizimi
CODE(text)

Parametreler
T ERIM TA N IM

metin İlk karakterinin kodunu istediğiniz metin.

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Ç

=CODE("A") A karakterinin sayısal kodunu 65


görüntüler

=CODE("!") ! karakterinin sayısal kodunu görüntüler 33


COMBINEVALUES
8.05.2020 • 3 minutes to read

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

sınırlayıcı Birleştirme sırasında kullanılacak ayırıcı. Sabit bir değer


olmalıdır.

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])))

Aşağıdaki tek sütunlu tabloyu döndürür:

[ 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

İki metin dizesini tek bir metin dizesinde birleştirir.

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.

Sütun başvurularını da kullanabilirsiniz.

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.

Örnek: Sabit değerleri birleştirme


Açıklama
Örnek formül, bağımsız değişken olarak sağlanan iki dizeyi birleştirerek yeni bir dize değeri oluşturur.
Kod
=CONCATENATE("Hello ", "World")

Örnek: Sütunlardaki dizelerin birleştirilmesi


Açıklama
Örnek formül, telefon rehberinde listelenen müşterinin tam adını döndürür. İkinci bağımsız değişken olarak iç içe
yerleştirilmiş bir işlev kullanıldığına dikkat edin. Bu, bağımsız değişken olarak kullanmak istediğiniz ikiden fazla
değer olduğunda dizeleri birleştirmek için kullanabileceğiniz bir yöntemdir.
Kod
=CONCATENATE(Customer[LastName], CONCATENATE(", ", Customer[FirstName]))

Örnek: Sütunlardaki dizeleri koşullu birleştirme


Açıklama
Örnek formül müşterinin adını, ikinci adının baş harfini ve soyadını kullanarak Customer tablosunda müşterinin
tam adını içeren yeni bir hesaplanmış sütun oluşturur. İkinci ad yoksa adın arkasına doğrudan soyadı eklenir. İkinci
ad varsa yalnızca ilk harfi kullanılır ve arkasına bir nokta eklenir.
Kod
=CONCATENATE( [FirstName]&" ", CONCATENATE( IF( LEN([MiddleName])>1, LEFT([MiddleName],1)&" ", ""),
[LastName]))

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.

Örnek: Farklı veri türüne sahip sütunları birleştirme


Aşağıdaki örnek, farklı veri türlerine sahip olan sütunlardaki değerlerin nasıl birleştirileceğini göstermektedir.
Birleştirdiğiniz değer sayısal ise örtük olarak metne dönüştürülür. İki değer de sayısal ise ikisi de metne
dönüştürülür ve dize gibi birleştirilir.

ÜRÜN K ISA LT M A SI ( B IL E Ş IK ÜRÜN N UM A RA SI ( B IL E Ş IK Y EN I O L U Ş T URUL A N


ÜRÜN A Ç IK L A M A SI A N A H TA RIN 1. SÜT UN U) A N A H TA RIN 2. SÜT UN U) A N A H TA R SÜT UN U

Dağ bisikleti MTN 40 MTN40

Dağ bisikleti MTN 42 MTN42

Kod

=CONCATENATE('Products'[Product abbreviation],'Products'[Product number])

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.

=[Product abbreviation] & "-" & [Product number]

Ayrıca bkz.
Metin işlevleri (DAX)
CONCATENATEX
8.05.2020 • 2 minutes to read

Bir tablodaki her satır için değerlendirilen ifadenin sonucunu birleştirir.

Söz dizimi
CONCATENATEX(<table>, <expression>, [delimiter])

Parametreler
T ERIM TA N IM

tablo İfadenin değerlendirileceği satırları içeren tablo.

ifade Tablonun her satırı için değerlendirilecek olan ifade.

sınırlayıcı (isteğe bağlı) Birleştirme sırasında kullanılacak ayırıcı.

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

CONCATENATEX(Employees, [FirstName] & “ “ & [LastName], “,”)


"Alan Brewer, Michael Blythe" döndürür
EXACT
8.05.2020 • 2 minutes to read

İ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

metin1 Metin içeren ilk metin dizesi veya sütunu.

metin2 Metin içeren ikinci metin dizesi veya sütunu.

Özellik Değeri/Döndürülen Değer


True veya false. (Boole)

Ö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

metin_bul Bulmak istediğiniz metin. metin_içinde değerindeki ilk


karakterle eşleştirmek için çift tırnak işareti (boş metin)
kullanın.

metin_içinde Bulmak istediğiniz metni içeren metin.

başlangıç_sayısı (isteğe bağlı) Aramanın başlatılacağı karakter; atlanırsa


ba şlangıç_sayısı = 1. metin_içinde değerindeki ilk karakter,
1 numaralı karakterdir.

NotFoundValue (isteğe bağlı) İşlem eşleşen bir alt dize bulamadığında


döndürülecek değer, genellikle 0, -1 veya BLANK() kullanılır.

Özellik Değeri/Döndürülen Değer


Bulmak istediğiniz metin dizesinin başlangıç noktasını gösteren sayı.

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.

=FIND("BMX","line of BMX racing goods")


Ayrıca bkz.
Metin işlevleri (DAX)
FIXED
8.05.2020 • 2 minutes to read

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

sayı Yuvarlamak ve metne dönüştürmek istediğiniz sayı veya sayı


içeren bir sütun.

ondalıklar (isteğe bağlı) Ondalık konumun sağında yer alacak basamak


sayısı; atlanırsa, 2 kullanılır.

virgül_yok (isteğe bağlı) Mantıksal değer: 1 olduğunda, döndürülen


metinde virgüller görüntülenmez; 0 olduğunda veya
atlandığında, döndürülen metinde virgüller görüntülenir.

Özellik Değeri/Döndürülen Değer


Metin olarak gösterilen bir sayı.

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

Değeri, belirtilen biçime göre metne dönüştürür.

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.

biçimlendirme_dizesi Biçimlendirme şablonunu içeren dize.

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:

B IÇ IM L EN DIRM E A M A C I İZ L EN M ESI GEREK EN Y Ö N ERGEL ER

Sayılar Önceden tanımlanmış sayısal biçimleri kullanın veya kullanıcı


tanımlı sayısal biçimler oluşturun.

Tarihler ve saatler Önceden tanımlanmış tarih/saat biçimlerini kullanın veya


kullanıcı tanımlı tarih/saat biçimleri oluşturun.

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

"General Number" Binlik ayıracı olmadan sayı görüntüler.

"Currency" Uygunsa binlik ayıracı ile sayıyı görüntüler; ondalık ayırıcısının


sağında iki basamak gösterir. Çıktı, sistemin yerel ayarlarını
temel alır.

"Fixed" Sol tarafta en az bir basamak ve ondalık ayırıcısının sağında iki


basamak gösterir.

"Standard" Sol tarafta en az bir basamak ve ondalık ayırıcısının sağında iki


basamak olmak üzere binlik ayıracı ile sayıyı gösterir.

"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.

"Scientific" Standart bilimsel gösterimi kullanır ve iki önemli basamak


belirtir.

"Yes/No" Sayı 0 ise Hayır, aksi takdirde Evet görüntüler.

"True/False" Sayı 0 ise False, aksi takdirde True görüntüler.

"On/Off" Sayı 0 ise Kapalı, aksi takdirde Açık görüntüler.

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.

FORMAT( 12345.67, "General Number")


FORMAT( 12345.67, "Currency")
FORMAT( 12345.67, "Fixed")
FORMAT( 12345.67, "Standard")
FORMAT( 12345.67, "Percent")
FORMAT( 12345.67, "Scientific")

Yukarıdaki ifadeler aşağıdaki sonuçları döndürür:


12345,67 "General Sayı", sayıyı biçimlendirme olmadan görüntüler.
$12.345,67 "Para Birimi", sayıyı para birimi yerel ayarınıza göre biçimlendirir. Buradaki örnekte varsayılan ABD
para birimi biçimlendirmesi gösterilmiştir.
12345,67 "Sabit", ondalık ayırıcının sol tarafında en az bir basamak ve ondalık ayırıcının sağında iki basamak
görüntüler.
12.345,67 "Standart", ondalık ayırıcının sol tarafında en az bir basamak ve ondalık ayırıcının sağında iki basamak
görüntüler ve binlik ayırıcıları kullanır. Buradaki örnekte varsayılan ABD sayı biçimlendirmesi gösterilmiştir.
1.234.567,00 % "Yüzde", sayıyı yüzde değeri (100 ile çarpılmış) olarak biçimlendirir ve sayının sağ tarafında bir
boşluk ve yüzde işareti gösterir.
1,23E+04 "Bilimsel", sayıyı iki basamaklı bilimsel gösterimle biçimlendirir.

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.

Farklı sayısal değerler için farklı biçimler


Sayılara yönelik kullanıcı tanımlı bir FORMAT ifadesinin noktalı virgülle ayrılmış bir ile dört arasında bölümü
olabilir. FORMAT işlevinin biçim bağımsız değişkeni adlandırılmış sayısal biçimlerden birini içeriyorsa yalnızca bir
bölüme izin verilir.

B UN U K UL L A N IRSA N IZ SO N UÇ :

Yalnızca bir bölüm Biçim ifadesi tüm değerler için geçerlidir.

İ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.

Üç bölüm İlk bölüm pozitif değerlere, ikinci bölüm negatif değerlere,


üçüncü bölüm ise sıfırlara 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

Kullanıcı tanımlı sayısal biçimler


Aşağıdaki tabloda kullanıcı tanımlı sayı biçimleri oluşturmak için kullanabileceğiniz karakterler tanımlanmaktadır.

K A RA K T ER A Ç IK L A M A

Hiçbiri Sayıyı biçimlendirme olmadan görüntüler.


K A RA K T ER A Ç IK L A M A

(0 ) Basamak yer tutucusu. Bir basamak veya sıfır görüntüler.


İfadenin biçim dizesinde 0’ın görüntülendiği konumda bir
rakam varsa bunu görüntüler. Aksi takdirde, bu konumda bir
sıfır görüntüler. Sayıda, biçim ifadesindeki sıfır sayısından daha
az sayıda rakam bulunuyorsa (ondalık ayıracının herhangi bir
tarafında) baştaki veya sondaki sıfırları görüntüler. Sayının
ondalık ayırıcısının sağındaki basamak sayısı biçim ifadesindeki
ondalık ayırıcısının sağında bulunan sıfırlardan daha fazlaysa,
sayıyı sıfır sayısı kadar ondalık basamak olacak şekilde yuvarlar.
Sayının ondalık ayırıcısının solundaki basamak sayısı biçim
ifadesindeki ondalık ayırıcısının solunda bulunan sıfırlardan
daha fazlaysa, fazla basamakları değiştirmeden görüntüler.

(#) 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.

(. ) Ondalık yer tutucusu. Bazı yerel ayarlarda, ondalık ayırıcısı


olarak virgül kullanılır. Ondalık yer tutucusu, ondalık
basamağının solunda ve sağında kaç tane basamağın
gösterildiğini belirler. Biçim ifadesi bu sembolün solunda
yalnızca sayı işaretlerini içeriyorsa, 1'den küçük sayılar ondalık
ayırıcısıyla başlar. Kesirli sayıların başında bir sıfır göstermek
için, ondalık ayırıcısının solundaki birinci basamak yer tutucusu
olarak 0 kullanın. Biçimlendirilen çıktıda ondalık yer tutucusu
olarak kullanılan gerçek karakter, sisteminiz tarafından tanınan
Sayı Biçimine bağlıdır.

( %) Yüzde yer tutucusu. İfade 100 ile çarpılır. Biçim dizesinde


göründüğü konuma yüzde karakteri ( % ) eklenir.

(, ) Binlik ayıracı. Bazı yerel ayarlarda, binlik ayıracı olarak nokta


kullanılır. Binlik ayıracı, ondalık ayırıcısının solunda dört veya
daha fazla basamağı olan bir sayının içinde binleri yüzlerden
ayırır. Biçim, başında ve sonunda basamak yer tutucuları (0
veya # ) olan bir binlik ayıracı içeriyorsa, binlik ayıracının
standart kullanımı belirtilir. İki bitişik binlik ayıracı veya ondalık
ayıracının hemen solunda bulunan bir binlik ayıracı (ondalık
belirtilmiş olsun veya olmasın), “sayıyı 1000’e bölüp
gerektiğinde yuvarlayarak ölçeklendirme” anlamına gelir.
Örneğin, 100 milyonu 100 olarak ifade etmek için “##0,,” biçim
dizesini kullanabilirsiniz. 1 milyondan küçük sayılar 0 olarak
gösterilir. Ondalık ayırıcısının hemen solu dışında herhangi bir
konumdaki ili bitişik binlik ayracının, binlik ayıracı kullanımını
belirttiği kabul edilir. Biçimlendirilen çıktıda binlik ayıracı olarak
kullanılan gerçek karakter, sisteminiz tarafından tanınan Sayı
Biçimine bağlıdır.

(: ) Tarih ayırıcısı. Bazı yerel ayarlarda, saat ayırıcısını temsil etmek


için başka karakterler kullanılabilir. Saat ayırıcısı, saat değerleri
biçimlendirilirken saat, dakika ve saniyeleri ayırır.
Biçimlendirilmiş çıktıda saat ayırıcısı olarak kullanılan gerçek
karakter, sistem ayarlarınıza göre belirlenir.
K A RA K T ER A Ç IK L A M A

(/) 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.

(E- E+ e- e+ ) Bilimsel biçim. Biçim ifadesi E-, E+, e- veya e+ sembolünün


sağında en az bir basamak yer tutucusu (0 veya # ) içeriyorsa
bu sayı bilimsel biçimde gösterilir ve sayı ile üssü arasına E
veya e eklenir. Sağdaki basamak yer tutucularının sayısı, üs
içindeki basamak sayısını belirler. Negatif üslerin yanına eksi
işareti yerleştirmek için E-veya e- kullanın. Negatif üslerin
yanına eksi işareti ve pozitif üslerin yanına artı işareti
yerleştirmek için E+ veya e+ kullanın.

- + $ () Değişmez bir karakter görüntüler. Listelenenlerin dışında bir


karakter görüntülemek için, önüne bir ters eğik çizgi koyun (
\ ) veya çift tırnak işareti (" ") içine alın.

(\) Biçim dizesinde bir sonraki karakteri görüntüler. Özel anlamı


olan bir karakteri değişmez karakter olarak görüntülemek için
önüne bir ters eğik çizgi ( \ ) koyun. Ters eğik çizgi
gösterilmez. Ters eğik çizgi kullanmak, sonraki karakteri çift
tırnak işaretleri içine almakla aynıdır. Bir ters eğik çizgiyi
göstermek için iki ters eğik çizgi ( \\ ) kullanın. Tarih
biçimlendirme ve saat biçimlendirme karakterleri (a, c, d, h, m,
n, p, q, s, t, w, y, / ve :), sayısal biçimlendirme karakterleri (#, 0,
%, E, e, virgül ve nokta) ve dize biçimlendirme karakterleri (@,
&, <, > ve !), değişmez karakter olarak gösterilemeyen
karakterlerin örneklerindendir.

(“ABC”) Dizeyi çift tırnak işaretleri (" ") içinde görüntüler.

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

"General Date" Tarihi ve/veya saati görüntüler. Örneğin, 12.03.2008 11:07:31.


Görüntülenen tarih, uygulamanızın geçerli kültür değerine
göre değişir.

"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.

"Medium Time" Saati 12 saat biçiminde görüntüler. Örneğin, 11:07 AM.

"Short Time" Saati 24 saat biçiminde görüntüler. Örneğin, 11:07.

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.

Kullanıcı tanımlı tarih/saat biçimleri


K A RA K T ER A Ç IK L A M A

(: ) Tarih ayırıcısı. Bazı yerel ayarlarda, saat ayırıcısını temsil etmek


için başka karakterler kullanılabilir. Saat ayırıcısı, saat değerleri
biçimlendirilirken saat, dakika ve saniyeleri ayırır.
Biçimlendirilmiş çıktıda saat ayırıcısı olarak kullanılan gerçek
karakter, sistem ayarlarınıza göre belirlenir.

(/) 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.

c Sırasıyla, tarihi ddddd , saati ttttt biçiminde görüntüler.


Tarih seri numarasında kesirli bir bölüm yoksa yalnızca tarih
bilgilerini görüntüler; tamsayı kısmı yoksa yalnızca saat
bilgilerini görüntüler.

d Gün değerini, önünde sıfır olmadan bir sayı olarak (1–31)


görüntüler.

dd Gün değerini, önüne sıfır koyarak bir sayı olarak (01–31)


görüntüler.

ddd Gün değerini kısaltma olarak (Paz–Cts) görüntüler.


Yerelleştirilmiştir.

dddd Günü tam adıyla (Pazar–Cumartesi) gösterir. Yerelleştirilmiştir.

ddddd Tarihi, sisteminizin kısa tarih biçimi ayarına uygun şekilde


biçimlendirilmiş tam tarih olarak (gün, ay ve yıl içerecek
şekilde) görüntüler. Varsayılan kısa tarih biçimi: m/d/yy .

dddddd Tarih seri numarasını, sisteminiz tarafından tanınan uzun tarih


ayarına uygun şekilde biçimlendirilmiş tam tarih olarak (gün,
ay ve yıl içerecek şekilde) görüntüler. Varsayılan uzun tarih
biçimi: mmmm dd, yyyy .

w Haftanın günlerini sayı olarak (Pazar için 1, Cumartesi için 7)


görüntüler.

ww Yılın haftalarını sayı olarak (1–54) görüntüler.


K A RA K T ER A Ç IK L A M A

m Ay değerini, önünde sıfır olmadan bir sayı olarak (1–12)


görüntüler. h veya hh ardından m geliyorsa ay yerine
dakika görüntülenir.

mm Ayı başında sıfır olacak şekilde bir sayı olarak (01–12)


görüntüler. h veya hh ardından m geliyorsa ay yerine
dakika görüntülenir.

mmm Ay değerini kısaltma olarak (Oca–Ara) görüntüler.


Yerelleştirilmiştir.

mmmm Ay değerini tam ay adıyla (Ocak–Aralık) görüntüler.


Yerelleştirilmiştir.

q Yılın çeyreğini sayı olarak (1–4) görüntüler.

y Yılın gününü sayı olarak (1–366) görüntüler.

yy Yılı 2 basamaklı bir sayı olarak (00–99) görüntüler.

yyyy Yılı 4 basamaklı bir sayı olarak (100–9999) görüntüler.

h Saat değerini, önünde sıfır olmadan bir sayı olarak (0–23)


görüntüler.

hh Saat değerini, önüne sıfır koyarak bir sayı olarak (00–23)


görüntüler.

n Dakika değerini, önünde sıfır olmadan bir sayı olarak (0–59)


görüntüler.

nn Dakika değerini, önüne sıfır koyarak bir sayı olarak (00–59)


görüntüler.

s Saniye değerini, önünde sıfır olmadan bir sayı olarak (0–59)


görüntüler.

ss Saniye değerini, önüne sıfır koyarak bir sayı olarak (00–59)


görüntüler.

ttttt Saati, sisteminiz tarafından tanınan zaman biçimi ile


tanımlanan zaman ayıracı kullanılarak biçimlendirilmiş tam saat
olarak (saat, dakika ve saniye içerecek şekilde) görüntüler.
Önüne sıfır ekleme seçeneği işaretliyse ve saat sabah veya
akşam 10:00’dan erkense önde sıfır görüntülenir. Varsayılan
saat biçimi: h:mm:ss .

AM/PM 12 saatlik zamanı kullanır ve öğleden önceki herhangi bir saati


büyük harfli AM ile birlikte gösterir; öğle ile 23.59 arasındaki
herhangi bir saati büyük harfli PM ile birlikte gösterir.

am/pm 12 saatlik zamanı kullanır ve öğleden önceki herhangi bir saati


küçük harfli AM ile birlikte gösterir; öğle ile 23.59 arasındaki
herhangi bir saati küçük harfli PM ile birlikte gösterir.
K A RA K T ER A Ç IK L A M A

A/P 12 saatlik zamanı kullanır ve öğleden önceki herhangi bir saati


büyük harfli A ile birlikte gösterir; öğle ile 23.59 arasındaki
herhangi bir saati büyük harfli P ile birlikte gösterir.

a/p 12 saatlik zamanı kullanır ve öğleden önceki herhangi bir saati


küçük harfli A ile birlikte gösterir; öğle ile 23.59 arasındaki
herhangi bir saati küçük harfli P ile birlikte gösterir.

AMPM 12 saatlik zamanı kullanır ve öğleden önceki herhangi bir saati


sisteminiz tarafından tanımlanan AM değişmez değeri ile
birlikte gösterir; öğle ile 23.59 arasındaki herhangi bir saati
sisteminiz tarafından tanımlanan PM değişmez değeri ile
birlikte gösterir. AMPM büyük veya küçük harfli olabilir ancak
görüntülenen dizenin harf düzeni, sistem ayarlarınızda
tanımlanan dizeyle aynı olur. Varsayılan biçim AM/PM
şeklindedir. Sisteminiz 24 saatlik biçime ayarlandıysa dize,
standart olarak sıfır uzunluklu bir dizeye ayarlanır.

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

Metin dizesinin başından başlayarak belirtilen sayıda karakteri döndürür.

Sözdizimi
LEFT(<text>, <num_chars>)

Parametreler
T ERIM TA N IM

metin Ayıklamak istediğiniz karakterleri içeren metin dizesi veya


metin içeren sütun başvurusu.

sayı_karakterler (isteğe bağlı) LEFT tarafından ayıklanmasını istediğiniz


karakterlerin sayısı; atlanırsa, 1 kullanılır.

Özellik Değeri/Döndürülen Değer


Metin dizesi.

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

Metin dizesindeki karakterlerin sayısını döndürür.

Sözdizimi
LEN(<text>)

Parametreler
T ERIM TA N IM

metin Uzunluğunu bulmak istediğiniz metin veya metin içeren bir


sütun. Boşluklar karakter olarak sayılır.

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

Metin dizesindeki tüm harfleri küçük harfe dönüştürür.

Söz dizimi
LOWER(<text>)

Parametreler
T ERIM TA N IM

metin Küçük harfe dönüştürmek istediğiniz metin veya metin içeren


bir sütuna başvuru.

Özellik Değeri/Döndürülen Değer


Küçük harfli metin.

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

metin İçinden karakterleri ayıklamak istediğiniz metin dizesi veya


metin içeren bir sütun.

başlangıç_sayısı Ayıklamak istediğiniz ilk karakterin konumu. Konumlar 1'den


başlar.

sayı_karakterler Döndürülecek karakterlerin sayısı.

Özellik Değeri/Döndürülen Değer


Belirtilen uzunlukta bir metin dizesi.

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))

"bcd" ifadesini döndürür.


Şu ifade,

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

eski_metin Değiştirmek istediğiniz karakterleri içeren metin dizesi veya


metin içeren sütun başvurusu.

başlangıç_sayısı yeni_metin ile değiştirmek istediğiniz eski_metin içinde


karakterin konumu.

sayı_karakterler Değiştirmek istediğiniz karakterlerin sayısı. Uyarı:


sayı_karakterler bağımsız değişkeninin boş olması veya boş
sonuç veren bir sütuna başvurması durumunda yeni_metin
dizesi, karakter değişikliği yapılmadan başlangıç_sayısı
konumuna eklenir. İşlevin Excel'deki davranışı da bu şekildedir.

yeni_metin eski_metin içindeki belirtilen karakterlerin yerini alacak olan


metin.

Özellik Değeri/Döndürülen Değer


Metin dizesi.

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.

=REPLACE('New Products'[Product Code],1,2,"OB")

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

metin Yinelemek istediğiniz metin.

yineleme_sayısı Metnin kaç kez yineleneceğini belirten pozitif bir sayı.

Özellik Değeri/Döndürülen Değer


Değişiklikleri içeren dize.

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.

Örnek: Değişmez Dizeleri Yineleme


Açıklama
Aşağıdaki örnek, 85 dizesini üç kez yineleyerek döndürür.
Kod

=REPT("85",3)

Örnek: Sütun Değerlerini Yineleme


Açıklama
Aşağıdaki örnek, [MyText] sütunundaki dizeyi [MyNumber] sütununda belirtilen sayıda yineleyerek döndürür.
Formül sütunun tamamını kapsadığından elde edilen dize, her bir satırdaki metne ve sayı değerine göre değişir.
Kod

=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

metin Ayıklamak istediğiniz karakterleri içeren metin dizesi veya


metin içeren sütun başvurusu.

sayı_karakterler (isteğe bağlı) RIGHT tarafından ayıklanmasını istediğiniz


karakterlerin sayısı; atlanırsa, 1 kullanılır. Ayrıca, sayı içeren bir
sütuna başvuru da yapabilirsiniz.

Başvurulan sütunda metin yoksa örtük olarak metne dönüştürülür.

Özellik Değeri/Döndürülen Değer


Belirtilen en sağdaki karakterleri içeren bir metin dizesi.

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.

Örnek: Sabit Sayıda Karakter Döndürme


Açıklama
Aşağıdaki formül, New Products tablosundaki ürün kodunun son iki basamağını döndürür.
Kod

=RIGHT('New Products'[ProductCode],2)

Örnek: Karakter Sayısını Belirtmek için Sütun Başvurusu Kullanma


Açıklama
Aşağıdaki formül, MyCount sütunundaki sayıya bağlı olarak New Products tablosundaki ürün kodundan değişken
sayıda basamağı döndürür. MyCount sütununda değer yoksa veya boş değer varsa RIGHT işlevi de boş değer
döndürür.
Kod

=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

metin_bul Bulmak istediğiniz metin.

metin_bul içinde joker karakterler kullanabilirsiniz: Soru


işareti (?) ve yıldız (*). Soru işareti herhangi bir tek karakterle
eşleşir, yıldız işareti ise herhangi bir karakter dizisiyle eşleşir.
Gerçek bir soru işaretini veya yıldız işaretini bulmak
istiyorsanız karakterden önce tilde (~) koyun.

metin_içinde metin_bul için arama yapmak istediğiniz metin veya metin


içeren bir sütun.

başlangıç_sayısı (isteğe bağlı) Aramaya başlamak istediğiniz metin_içinde


karakter konumu. Atlanırsa 1 değeri kullanılır.

NotFoundValue (isteğe bağlı) İşlem eşleşen bir alt dize bulamadığında


döndürülecek değer, genellikle 0, -1 veya BLANK() kullanılır.

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.

Örnek: Bir dize içinde arama


Açıklama
Aşağıdaki formül, "n" harfinin "printer" sözcüğü içindeki konumunu bulur.
Kod

=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.

Örnek: Bir sütun içinde arama


Açıklama
SEARCH işlevinde bağımsız değişken olarak sütun başvurusu kullanabilirsiniz. Aşağıdaki formül, "-" (kısa çizgi)
karakterinin [PostalCode] sütunundaki konumunu bulur.
Kod

=SEARCH("-",[PostalCode])

Yorumlar
Döndürülen sonuçta kısa çizginin dizin konumunu belirten sayıların olduğu bir sütun bulunur.

Örnek: SEARCH işlevinde hata işleme


Açıklama
Yukarıdaki örnekte verilen formül, aranan dizenin kaynak sütunun her satırında bulunmaması durumunda
başarısız olacaktır. Bu nedenle bir sonraki örnekte her satır için geçerli bir sonuç döndürülmesini sağlama amacıyla
SEARCH işlevi ile IFERROR işlevinin nasıl kullanılacağı gösterilmiştir.
Aşağıdaki formül, "-" karakterinin konumunu sütun içinde arar ve dize bulunamazsa -1 değerini döndürür.
Kod

= 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

Varolan metni, bir metin dizesindeki yeni metinle değiştirir.

Sözdizimi
SUBSTITUTE(<text>, <old_text>, <new_text>, <instance_num>)

Parametreler
T ERIM TA N IM

metin Karakterleri değiştirmek istediğiniz metin veya metin içeren bir


sütunun başvurusu.

eski_metin Değiştirmek istediğiniz mevcut metin.

yeni_metin eski_metin yerine koymak istediğiniz metin.

örnek_sayısı (isteğe bağlı) Değiştirmek istediğiniz eski_metin sayısı.


Atlanırsa tüm eski_metin örnekleri değiştirilir.

Özellik Değeri/Döndürülen Değer


Metin dizesi.

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.

Örnek: Dize içinde değiştirme


Açıklama
Aşağıdaki formül sütunda geçen eski PA ürün kodu örneklerini yeni NW ürün koduyla değiştirerek [Product Code]
sütununun bir kopyasını oluşturur.
Kod

=SUBSTITUTE([Product Code], "NW", "PA")


Ayrıca bkz.
Metin işlevleri (DAX)
REPLACE işlevi (DAX)
TRIM
8.05.2020 • 2 minutes to read

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

metin Boşlukların kaldırılmasını istediğiniz metin veya metin içeren bir


sütun.

Özellik Değeri/Döndürülen Değer


Boşlukları kaldırılan dize.

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: &nbsp;. 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.

=TRIM("A column with trailing spaces. ")

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:

=LEN([Calculated Column 1])

Ayrıca bkz.
Metin işlevleri (DAX)
UNICHAR
8.05.2020 • 2 minutes to read

Sayısal değerin başvurduğu Unicode karakterini döndürür.

Söz dizimi
UNICHAR(number)

Parametreler
T ERIM TA N IM

sayı Karakteri temsil eden Unicode sayısı.

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 (&#9733 karakteri) döndürür.

=UNICHAR(9733)
UNICODE
8.05.2020 • 2 minutes to read

Metnin ilk karakterine karşılık gelen sayıyı (kod noktası) döndürür.

Sözdizimi
UNICODE( <Text> )

Parametreler
T ERIM TA N IM

Metin Metin, Unicode değerini istediğiniz karakterdir.

Döndürülen değer
Bir metin dizesindeki ilk karakterin sayısal kodu.
UPPER
8.05.2020 • 2 minutes to read

Metin dizesini tümüyle büyük harfe dönüştürür.

Sözdizimi
UPPER (<text>)

Parametreler
T ERIM TA N IM

metin Büyük harfe dönüştürülmesini istediğiniz metin veya metin


içeren sütun başvurusu.

Özellik Değeri/Döndürülen Değer


Aynı metin, büyük harf.

Örnek
Aşağıdaki formül, [ProductCode] sütunundaki dizeyi tamamı büyük harfe dönüştürür. Alfabe dışı karakterler
etkilenmez.

=UPPER(['New Products'[Product Code])

Ayrıca bkz.
Metin işlevleri (DAX)
LOWER işlevi (DAX)
VALUE
8.05.2020 • 2 minutes to read

Bir sayıyı temsil eden metin dizesini sayıya dönüştürür.

Söz dizimi
VALUE(<text>)

Parametreler
T ERIM TA N IM

metin Dönüştürülecek metin.

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

DEFINE (Anahtar sözcük) Yalnızca bir DAX sorgusunun süresi boyunca


mevcut olan varlıkları tanımlar.

EVALUATE (Anahtar sözcük) Bir DAX sorgusunun yürütülmesi için gerekli


olan deyim.

ORDER BY (Anahtar sözcük) Bir DAX sorgusunun sonuçlarını sıralamak


için kullanılan bir veya daha fazla ifade tanımlar.

VAR (Anahtar sözcük) 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.
DEFINE
8.05.2020 • 2 minutes to read

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

varlık MEASURE, VAR, TABLE veya COLUMN.

name Varlığın adı. Bu değer bir ifade olamaz.

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

Bir DAX sorgusunda gerekli olan tablo ifadesini içeren deyim.

Sözdizimi
EVALUATE <table>

Parametreler
T ERIM TA N IM

tablo Bir tablo ifadesi

Döndürülen değer
Bir tablo ifadesinin sonucu.

Açıklamalar
Bir sorguda birden fazla EVALUATE deyimi bulunabilir.

Örnek
EVALUATE(
'Internet Sales'
)

İnternet Satışları tablosundaki tüm satırları ve sütunları tablo olarak döndürür.

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

ifade Tek bir skaler değer döndüren bir DAX ifadesi.

ASC (varsayılan) Artan sıralama düzeni.

DESC Azalan sıralama düzeni.

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

name Değişkenin adı (tanımlayıcı).


Sınırlayıcılar desteklenmez. Örneğin ‘varName’ veya [varName]
hataya neden olur.
Desteklenen karakter kümesi: a-z, A-Z, 0-9.
İlk karakter olarak 0-9 arası sayılar kullanılamaz.
Tanımlayıcı adının öncesinde __ (çift alt çizgi) kullanılabilir.
Başka özel karakterler desteklenmez.
Ayrılmış anahtar sözcüklere izin verilmez.
Mevcut tabloların adlarına izin verilmez.
Boşluklara izin verilmez.

ifade Skaler değer veya tablo değeri döndüren DAX ifadesi.

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:

Sum of SalesAmount = SUM(SalesTable[SalesAmount])

İkinci ölçü, önceki yılın satış tutarı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.

Sum of SalesAmount YoY%: =


IF([Sum of SalesAmount] ,
DIVIDE(([Sum of SalesAmount] – [SalesAmount PreviousYear]), [Sum of SalesAmount])
)

Bir değişken kullanarak aynı sonucu hesaplayan tek bir ölçü oluşturabilirsiniz:

YoY% = VAR Sales = SUM(SalesTable[SalesAmount])

VAR SalesLastYear =
CALCULATE ( SUM ( SalesTable[SalesAmount] ), SAMEPERIODLASTYEAR ( 'Calendar'[Date] ) )

return if(Sales, DIVIDE(Sales – SalesLastYear, Sales))

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

Bu makalede, DAX formül ifade dilinin söz dizimi ve gereksinimleri açıklanmaktadır.

Söz dizimi gereksinimleri


DAX formülleri her zaman eşittir işaretiyle (=) başlar. Eşittir işaretinden sonra skaler değer olarak değerlendirilen
veya skaler değere dönüştürülebilecek bir ifade sağlayabilirsiniz. Buna aşağıdakiler dahildir:
Skaler sabit veya skaler işleç (+,-,*,/,>=,...,&&, ...) kullanan bir ifade.
Sütun veya tablo başvuruları. DAX dilinde işlev girişi olarak her zaman tablolar ve sütunlar kullanılır, dizi
veya rastgele değer kümesi kullanılmaz.
İfadenin içinde işleçler, sabitler ve değerler sağlanır.

İş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ı.

Aşağıda geçerli formül örnekleri verilmiştir.

F O RM ÜL SO N UÇ

=3 3

="Sales " Sales

='Sales'[Amount] Bu formülü Sales (Satış) tablosunda kullanırsanız Sales


tablosunda geçerli satırın Amount (Tutar) sütunundaki
değerini alırsınız.

=(0,03 *[Amount]) Geçerli tablonun Amount (Tutar) sütunundaki değerin yüzde


üçü.
=0,03 * [Amount]
Yüzde hesaplamak için bu formülü kullanabilirsiniz ancak
tabloya biçimlendirme uygulamadığınız sürece sonuç yüzde
değeri olarak gösterilmez.

=PI() PI sabitinin değeridir.


NOTE
Formüller, hesaplanmış sütunda veya PivotTable içindeki bir ölçüde kullanılma durumlarına göre farklı sonuçlar verebilir.
Bağlama ve formülde kullandığınız verilerle hesaplamada kullanılabilecek diğer veriler arasındaki ilişkiye her zaman hakim
olmanız gerekir.

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:

Nesne Türü Örnekler Açıklama

Tablo adı Sales Boşluk veya özel karakter içermeyen


tablo adlarının tırnak içine alınması
gerekmez.

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.

DAX işleçleri ve sabitleri


DAX tarafından desteklenen işleçler aşağıdaki tabloda listelenmiştir. İşleçlerin söz dizimleri hakkında daha fazla
bilgi için bkz. DAX işleçleri.

İŞ L EÇ T ÜRÜ SEM B O L Ü VE K UL L A N IM I

Ayraç işleci () öncelik sırası ve bağımsız değişkenlerin gruplanması

Aritmetik işleçler + (toplama)

- (çıkarma/

işaret)

* (çarpma)

/ (bölme)

^ (üs olarak gösterme)

Karşılaştırma işleçleri = (eşittir)

> (büyüktür)

< (küçüktür)

>= (büyüktür veya eşittir)

<= (küçüktür veya eşittir)

<> (eşit değildir)


İŞ L EÇ T ÜRÜ SEM B O L Ü VE K UL L A N IM I

Metin birleştirme işleci & (birleştirme)

Mantık işleçleri && (ve)

|| (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

+ (artı işareti) Toplama 3+3

– (eksi işareti) Çıkarma veya işaret 3–1–1

* (yıldız işareti) Çarpma 3*3

/ (eğik çizgi) Bölme 3/3

^ (şapka karakteri) Üs olarak gösterme 16^4

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

= Eşittir [Region] = "USA"

== Katı eşitlik [Region] == "USA"

> Büyüktür [Sales Date] > "Jan 2009"

< Küçüktür [Sales Date] < "Jan 1 2009"

>= Büyük veya eşittir [Amount] >= 20000


K A R Ş IL A Ş T IRM A I Ş L EC I ANLAMI Ö RN EK

<= Küçük veya eşittir [Amount] <= 100

<> Eşit değildir [Region] <> "USA"

== 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.

IN Bir tabloyla karşılaştırılan her satır 'Product'[Color] IN { "Red", "Blue",


arasında mantıksal bir OR koşulu "Black" }
oluşturur. Not: Tablo oluşturucu söz
diziminde küme ayracı kullanılır.

İşleçler ve öncelik sırası


Bazı durumlarda hesaplamanın yapılma sırası döndürülen değeri etkileyebilir. Bu nedenle sıranın nasıl
belirlendiğini ve istenen sonuçları almak için sırayı nasıl değiştirebileceğinizi anlamanız önemlidir.
Hesaplama sırası
Bir ifade, işleçleri ve değerleri belirli bir sırada değerlendirir. Tüm ifadeler eşittir işaretiyle (=) başlar. Eşittir işareti,
ardından gelen karakterlerin bir ifade oluşturduğunu belirtir.
Eşittir işaretinden sonra, aralarında hesaplama işleçleri bulunan hesaplama öğeleri (işlenenler) yer alır. İfadeler
her zaman soldan sağa doğru okunur ancak ayraç kullanarak öğelerin gruplanma sırasını denetleyebilirsiniz.
İşleç önceliği
Bir formülde birden fazla işleç kullanmanız durumunda aşağıdaki tabloya göre sıralama yapılır. Aynı öncelik
değerine sahip olan işleçler, soldan sağa doğru sıralanır. Örneğin bir ifadede hem çarpma hem de bölme işleci
varsa soldan sağa doğru ifadede görünme sırasına göre değerlendirme yapılır.

İŞ L EÇ A Ç IK L A M A

^ Üs olarak gösterme

– İşaret (–1 gibi)

* ve / Çarpma ve bölme

! DEĞİL (birli işleç)

+ ve – Toplama ve çıkarma

& İki metin dizesini bağlar (birleştirme)

=,==,<,>,<=,>=,<> Karşılaştırma

Hesaplama sırasını denetlemek için ayraçları kullanma


Değerlendirme sırasını değiştirmek için formülün önce hesaplanması gereken bölümünü ayraç içine almanız
gerekir. Örneğin aşağıdaki formülde çarpma işlemi toplama işleminden önce gerçekleştirildiğinden sonuç 11 olur.
Formül 2'yi 3 ile çarpıp sonuca 5 ekler.

=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.

=(3 + 0.25)/(3 - 0.25)

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.

SO L TA RA F TA K I VERI T ÜRÜ SA Ğ TA RA F TA K I VERI T ÜRÜ

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.

DA X'TA K UL L A N IL A N VERI T ÜRL ERI EXC EL 'DE K UL L A N IL A N VERI T ÜRL ERI

Sayılar (I8, R8) Sayılar (R8)

Dize Dize

Boole Boole

DateTime Değişken

Para Birimi Para Birimi

Öncelik sırasındaki farklar


DAX formüllerindeki işleç önceliği, Microsoft Excel'de kullanılanla temelde aynıdır ancak yüzde gibi bazı Excel
işleçleri desteklenmez. Ayrıca aralıklar da desteklenmez.
Bu nedenle Excel'deki formülleri kopyalayıp yapıştırdığınızda dikkatlice incelemeniz önerilir. Bu formüllerdeki bazı
işleçler veya formüller geçerli olmayabilir. İşleçlerin öncelik sırasıyla ilgili şüpheleriniz olduğunda işleç sırasını
denetlemek ve sonuçlardaki belirsizliği ortadan kaldırmak için ayraç kullanmanız önerilir.

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

tablo Bir tablo ifadesi.

Örnek

EVALUATE(
'Internet Sales'
)

İnternet Satışları tablosundaki tüm satırları ve sütunları tablo olarak döndürür.


ORDER BY (İsteğe bağlı)
İsteğe bağlı ORDER BY anahtar sözcüğü, sorgu sonuçlarını sıralamak için kullanılan bir veya daha fazla ifade
tanımlar. Satırın her bir satırı için değerlendirilebilen tüm ifadeler geçerlidir.
Söz dizimi

EVALUATE <table>
[ORDER BY {<expression> [{ASC | DESC}]}[, …]

Bağımsız değişkenler

T ERIM TA N IM

ifade Tek bir skaler değer döndüren bir DAX ifadesi.

ASC (varsayılan) Artan sıralama düzeni.

DESC Azalan sıralama düzeni.

Ö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

değer Sabit değer. Bir ifade olamaz.

parametre Önünde @ karakteri bulunan XMLA deyimi parametresi


adı.

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

[DEFINE { MEASURE <tableName>[<name>] = <expression> }


{ VAR <name> = <expression>}]
EVALUATE <table>

Bağımsız değişkenler

T ERIM TA N IM

tableName Standart DAX söz dizimi kullanılarak belirtilen var olan


tablonun adı. Bu değer bir ifade olamaz.

name Yeni bir ölçünün adı. Bu değer bir ifade olamaz.

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.

VAR Adlandırılmış değişken olarak isteğe bağlı bir ifade. VAR,


diğer ifadelerde bağımsız değişken olarak kullanılabilir.

Ö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.

DAX sorgularındaki parametreler


İyi tanımlanmış bir DAX sorgusu deyimine parametre ekleyebilir, yalnızca bu parametreleri değiştirerek tekrar
tekrar kullanabilirsiniz.
Execute Yönteminde (XMLA), parametrelerin tanımlanmasını ve bunlara değer atanmasını sağlayan bir
Parameters Element (XMLA) koleksiyon öğesi bulunur. Koleksiyon içindeki her bir Parameter Element (XMLA)
öğesi, parametrenin adını tanımlar ve ona bir değer ekler.
XMLA parametrelerine başvurmak için parametre adının önüne @ karakteri ekleyin. Bu şekilde söz diziminde
değer kullanılabilecek olan tüm noktalara parametre çağrısı eklenebilir. Tüm XMLA parametreleri metin olarak
yazı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

ifade İfadenin birden fazla değerlendirileceği (her bir satır/bağlam


için) tek bir skaler değer döndüren DAX ifadesi.

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.

tablo Bir veri tablosu döndüren herhangi bir DAX ifadesi.

tableName Standart DAX söz dizimi kullanılarak belirtilen var olan


tablonun adı. Bu değer bir ifade olamaz.

columnName Standart DAX söz dizimi kullanılarak belirtilen var olan


sütunun adı (genellikle tam ad kullanılır). Bu değer bir ifade
olamaz.

name Yeni nesnenin adını sağlamak için kullanılacak dize sabiti.

sırala Sıralama düzenini belirlemek için kullanılan bir sabit listesi.

eşdeğerler Eşdeğer değerlerin işlenmesini belirlemek için kullanılan bir


sabit listesi.

tür PathItem ve PathItemReverse için veri türünü belirlemek için


kullanılan bir sabit listesi.

Parametre adlarına ön ek getirme veya yalnızca ön eki kullanma


PA RA M ET RE A Ç IK L A M A

ön ek getirme Parametre adları, bağımsız değişkenin kullanılma şeklini


belirtmek ve parametrelerin okunması sırasındaki belirsizliği
önlemek için daha nitelikli hale getirilebilir. Örnek:

Result_ColumnName: LOOKUPVALUE() işlevindeki sonuç


değerlerini almak için kullanılan mevcut bir sütuna başvurur.

Search_ColumnName: LOOKUPVALUE() işlevindeki bir değeri


aramak için kullanılan mevcut bir sütuna başvurur.
PA RA M ET RE A Ç IK L A M A

atlama Ön ek, parametreyi tanımlamaya yetecek kadar net


olduğunda parametre adları atlanır.

Örneğin kullanıcının DATE (Year_Value, Month_Value,


Day_Value) söz dizimi yerine DATE (Year, Month, Day) söz
dizimini okuması daha kolay olacaktır. Son ek değerinin üç kez
tekrarlanması, işlevin daha iyi anlaşılmasını sağlamaz ve
okumayı gereksiz yere zorlaştırır.

Ancak ön ek getirilen parametrenin Year_columnName olması


durumunda parametre adı ve ön ek korunacak ve kullanıcının
parametrenin mevcut Years sütununa başvuru gerektirdiğini
anlaması sağlanacaktır.

You might also like