Excel DAX - Operatörler
DAX, bir veya daha fazla değeri hesaplamak ve döndürmek için bir formül veya ifadede kullanılabilen işlevler, işleçler ve değerlerden oluşan bir formül dilidir.
Kullanabilirsiniz DAX operatorsdeğerleri karşılaştırmak, aritmetik hesaplamalar yapmak ve dizeleri birleştirmek için. Bu bölümde DAX operatörlerini ve bunların nasıl kullanılacağını öğreneceksiniz.
DAX Operatörlerinin Türleri
DAX, aşağıdaki işleç türlerini destekler -
- DAX Aritmetik Operatörleri
- DAX Karşılaştırma Operatörleri
- DAX Metin Birleştirme Operatörü
- DAX Mantıksal Operatörleri
DAX Operatör Öncelik Sırası
Birçok değeri veya ifadeyi birleştiren birçok DAX işleci içeren bir DAX formülüne sahip olabilirsiniz. Böyle bir durumda nihai sonuç, işlemlerin gerçekleştirildiği sıraya bağlı olacaktır. DAX, size varsayılan işleç öncelik sırasını ve ayrıca varsayılan öncelik sırasını geçersiz kılma yollarını sağlar.
DAX varsayılan işleç önceliği aşağıdaki tabloda listelenmiştir.
Öncelik Sırası | Operatör (ler) | Operasyon |
---|---|---|
1 | ^ | Üs alma |
2 | - | İşaret |
3 | * ve / | Çarpma ve bölme |
4 | ! | DEĞİL |
5 | + ve - | Toplama ve çıkarma |
6 | & | Birleştirme |
7 | =, <,>, <=,> = ve <> | Eşittir, Küçüktür, Büyüktür, Küçüktür veya eşittir, Büyüktür veya eşittir ve Eşit değildir |
DAX İfadesi Sözdizimi
Önce DAX ifade sözdizimini ve işlenenler ve işleçlerle ifade değerlendirmesinin nasıl yapıldığını anlamanız gerekir.
Tüm ifadeler her zaman eşittir işaretiyle (=) başlar. Eşittir işareti, sonraki karakterlerin bir ifade oluşturduğunu gösterir.
Eşittir işaretinin sağında, işlenenler DAX operatörleri tarafından bağlanır. Örneğin, = 5 + 4> 5.
= 5 * 6-3.
İfadeler her zaman soldan sağa okunur ve hesaplamalar, önceki bölümde verilen DAX işleci önceliğine göre bu sırayla yapılır.
DAX operatörleri eşit öncelik değerine sahipse, soldan sağa doğru değerlendirilirler. Örneğin, = 5 * 6/10. Hem * hem de / aynı emsal sıraya sahiptir. Dolayısıyla ifade 30/10 = 3 olarak değerlendirilir.
İfadedeki DAX işleçleri farklı öncelik değerlerine sahipse, soldan sağa öncelik sırasına göre değerlendirilirler.
= 5 + 4> 7. Varsayılan öncelik + birinci ve> sonraki'dir. Dolayısıyla ifade soldan sağa doğru hesaplanır. - Önce 9 ile sonuçlanan 5 + 4 hesaplanır ve ardından 9> 5 sonucu DOĞRU ile sonuçlanır.
= 5 * 6 - 3. Varsayılan öncelik * birinci ve - sonraki'dir. Dolayısıyla ifade soldan sağa doğru hesaplanır. - 5 * 6, önce 30 ile sonuçlanır ve ardından 30 - 3 hesaplanarak 27 sonuçlanır.
= 2 * 5 - 6 * 3. Varsayılan öncelik * önce *, sonra * ve sonra - şeklindedir. Dolayısıyla, ifade 10 - 18 olarak ve ardından -8 olarak değerlendirilir. Bunun 10 - 6 olmadığını ve 4 ve ardından 4 * 3 yani 12 olduğunu unutmayın.
DAX Hesaplama Sırasını Kontrol Etmek İçin Parantezleri Kullanma
DAX varsayılan işleci öncelik sırasını parantez kullanarak, işlenenleri ve işleçleri hesaplama sırasını kontrol etmek için gruplayarak değiştirebilirsiniz.
Örneğin, = 5 * 6 - 3, DAX varsayılan işleç öncelik sırasına göre 27 olarak değerlendirilir. İşlenenleri ve işleçleri = 5 * (6 - 3) olarak gruplamak için parantez kullanırsanız, önce 3 ile sonuçlanan 6 - 3 hesaplanır ve ardından 5 * 3 hesaplanır, bu da 15 sonucunu verir.
= 2 * 5 - 6 * 3, DAX varsayılan işleç öncelik sırasına göre -8 olarak değerlendirilir. İşlenenleri ve operatörleri = 2 * (5-6) * 3 olarak gruplamak için parantez kullanırsanız, önce -1 ile sonuçlanan 5-6 hesaplanır ve sonra 2 * (-1) * 3 hesaplanır ve bu da -6 sonucunu verir. .
Gördüğünüz gibi, aynı işlenenler ve işleçlerle, onları gruplama yönteminizle farklı sonuçlar elde etmek mümkündür. Bu nedenle, DAX formüllerinde DAX işleçlerini kullandığınızda, hesaplama sırasının nasıl olacağına dikkat etmelisiniz.
Excel ve DAX Arasındaki Farklar
DAX, Excel formülleriyle benzerlik gösterse de, ikisi arasında belirli önemli farklılıklar vardır.
DAX, temelde yerleşik bellekte yerleşik hesaplama motoru nedeniyle Excel'den daha güçlüdür.
DAX, Excel'den daha fazla veri türünü destekler.
DAX, tarih ve saat türleri için daha zengin destek de dahil olmak üzere ilişkisel bir veritabanı olan Veri Modeli'nin ek gelişmiş özelliklerini sağlar.
Bazı durumlarda, hesaplamaların sonuçları veya DAX'taki işlevlerin davranışı Excel'dekiyle aynı olmayabilir. Bu, aşağıdaki farklılıklardan kaynaklanmaktadır -
- Veri türü yayınlama
- Veri tipleri
Veri Türü Dökümünde Fark
DAX'ta, bir ifade = değer1 işleci değer2'ye sahip olduğunuzda, iki işlenen değer1 ve değer2 aynı veri türünde olmalıdır. Veri türleri farklıysa DAX, önce bunları örtük olarak ortak bir veri türüne dönüştürür. Ayrıntılar için DAX Sözdizimi bölümüne bakın.
Örneğin, farklı veri türlerinin iki işlenenini karşılaştırmanız gerekir, örneğin = [Miktar] * 0,08 gibi bir formülden kaynaklanan bir sayı ve bir tamsayı. İlk sayı, birçok ondalık basamağı olan bir ondalık sayı olabilir, ikinci sayı ise bir tam sayıdır. DAX bunu şu şekilde ele alır -
İlk olarak DAX, her iki tür sayıyı da depolayabilen en büyük sayısal biçimi kullanarak her iki işleneni gerçek sayılara dönüştürür.
Daha sonra DAX, iki gerçek sayıyı karşılaştıracaktır.
Bunun tersine, Excel farklı veri türlerinin değerlerini, önce bunları ortak bir veri türüne zorlamadan karşılaştırmaya çalışır. Bu nedenle, aynı karşılaştırma ifadesi için DAX ve Excel'de farklı sonuçlar bulabilirsiniz.
Veri Türlerindeki Fark
DAX ve Excel'de operatör öncelik sırası aynıdır. Ancak, Excel'in desteklediği operatör yüzdesi (%) ve veri aralıkları DAX tarafından desteklenmez. Ayrıca DAX, Excel'de durum böyle olmayan bir veri türü olarak tabloyu destekler.
Ayrıca, Excel formüllerinde, tek bir hücreye veya bir diziye veya bir hücre aralığına başvurabilirsiniz. DAX formüllerinde, bunlardan herhangi birine başvuramazsınız. Verilere DAX formül başvuruları tablolar, sütunlar, hesaplanan alanlar ve hesaplanan sütunlara göre olmalıdır.
Formülleri Excel'den kopyalayıp DAX'a yapıştırırsanız, DAX sözdizimi Excel formül sözdiziminden farklı olduğundan DAX formülünün doğruluğundan emin olun. Ayrıca, bir işlev DAX ve Excel'de aynı ada sahip olsa bile, parametreleri farklı olabilir ve işlevin sonucu da farklı olabilir.
Sonraki bölümlerde tüm bunlar hakkında daha fazla bilgi edineceksiniz.