Power BI Desktop'taki veri türleri

Bu makalede, Power BI Desktop ve Veri Çözümleme İfadeleri'nin (DAX) desteklediği veri türleri açıklanmaktadır.

Power BI verileri yüklediğinde, kaynak sütunlarının veri türlerini daha verimli depolamayı, hesaplamaları ve veri görselleştirmeyi destekleyen veri türlerine dönüştürmeye çalışır. Örneğin, Excel'den içeri aktardığınız bir değer sütununda kesirli değerler yoksa, Power BI Desktop veri sütununu tamsayı veri türüne dönüştürür ve bu tamsayıları depolamak için daha uygundur.

Bazı DAX işlevlerinin özel veri türü gereksinimleri olduğundan bu kavram önemlidir. Çoğu durumda DAX , veri türlerini örtük olarak dönüştürür, ancak bazı durumlarda dönüştürmez. Örneğin, bir DAX işlevi tarih veri türü gerektiriyorsa ancak sütununuzun veri türü Metin ise, DAX işlevi düzgün çalışmaz. Bu nedenle, sütunlar için doğru veri türlerini kullanmak önemlidir ve yararlıdır.

Sütunun veri türünü belirleme ve belirtme

Power BI Desktop'ta Power Query Düzenleyicisi, Veri Görünümü veya Rapor Görünümü'nde bir sütunun veri türünü belirleyebilir ve belirtebilirsiniz:

  • Power Query Düzenleyicisi'da sütunu seçin ve ardından şeridin Dönüştür grubunda Veri Türü'nü seçin.

    Screenshot of the Power Query Editor, showing the Data type dropdown selection.

  • Veri Görünümü veya Rapor Görünümü'nde sütunu seçin ve ardından şeridin Sütun araçları sekmesinde Veri türü'nin yanındaki açılan oku seçin.

    Screenshot of Data View, showing the Data type dropdown selection.

Power Query Düzenleyicisi'daki Veri Türü açılan listesinde Veri Görünümü veya Rapor Görünümü'nde bulunmayan iki veri türü vardır: Tarih/Saat/Saat Dilimi ve Süre. Bu veri türlerini içeren bir sütunu Power BI modeline yüklediğinizde Tarih/Saat/Saat Dilimi sütunu Tarih/saat veri türüne, Süre sütunu ise Ondalık sayı veri türüne dönüştürülür.

İkili veri türü, Power Query Düzenleyicisi dışında desteklenmez. Power Query Düzenleyicisi, Power BI modeline yüklemeden önce ikili dosyaları diğer veri türlerine dönüştürürseniz İkili veri türünü kullanabilirsiniz. İkiliseçimi eski nedenlerle Veri Görünümü ve Rapor Görünümü menülerinde bulunur, ancak Power BI modeline İkili sütunlar yüklemeye çalışırsanız hatalarla karşılaşabilirsiniz.

Sayı türleri

Power BI Desktop üç sayı türünü destekler: Ondalık sayı, Sabit ondalık sayı ve Tamsayı.

Sayı türleri için Numaralandırmaları belirtmek DataType için Tablosal Nesne Modeli (TOM) Sütunu DataType özelliğini kullanabilirsiniz. Power BI'da nesneleri program aracılığıyla değiştirme hakkında daha fazla bilgi için bkz . Tablosal Nesne Modeli ile Power BI anlam modellerini programlama.

Ondalık sayı

Ondalık sayı en yaygın sayı türüdür ve kesirli değerler ve tamsayılar içeren sayıları işleyebilir. Ondalık sayı, -1,79E +308 ile -2,23E -308 arasında negatif değerlere sahip 64 bit (sekiz bayt) kayan noktalı sayıları, 2,23E -308 ile 1,79E +308 arasında pozitif değerleri ve 0'ı temsil eder. 34, 34,01 ve 34,000367063 gibi sayılar geçerli ondalık sayılardır.

Ondalık sayı türünün gösterebileceği en yüksek duyarlık 15 basamaktır. Ondalık ayırıcısı, sayı içinde herhangi bir yerde bulunabilir. Bu tür, Excel'in sayılarını nasıl depolediğine karşılık gelir ve TOM bu türü Enum olarak DataType.Double belirtir.

Sabit ondalık sayı

Sabit ondalık sayı veri türü, ondalık ayırıcı için sabit bir konuma sahiptir. Ondalık ayırıcısının her zaman sağda dört basamağı vardır ve 19 basamak anlamlılık sağlar. Sabit ondalık sayısının gösterebileceği en büyük değer pozitif veya negatif 922.337.203.685.477.5807'dir.

Sabit ondalık sayı türü, yuvarlamanın hatalara neden olabileceği durumlarda kullanışlıdır. Küçük kesirli değerlere sahip sayılar bazen birikebilir ve bir sayıyı biraz yanlış olmaya zorlayabilir. Sabit ondalık sayı türü, ondalık ayırıcının sağındaki dört basamağı geçen değerleri keserek bu tür hataları önlemenize yardımcı olabilir.

Bu veri türü SQL Server'ın Ondalık (19,4) veya Excel'de Analysis Services ve Power Pivot'taki Para Birimi veri türüne karşılık gelir. TOM bu türü Enum olarak DataType.Decimal belirtir.

Tamsayı

Tam sayı , 64 bit (sekiz bayt) bir tamsayı değerini temsil eder. Tamsayı olduğundan, tamsayı ondalık basamağını sağda basamak içermiyor. Bu tür, -9.223.372.036.854.775.807 (-2^63+1) arasında pozitif veya negatif tamsayıların 19 basamağını sağlar ve 9.223.372.036.854.775.806 (2^63-2), dolayısıyla sayısal veri türlerinin olası en büyük sayılarını temsil edebilir.

Sabit ondalık türünde olduğu gibi, yuvarlama denetimi yapmanız gerektiğinde Tam sayı türü yararlı olabilir. TOM, Tam sayı veri türünü Enum olarak DataType.Int64 temsil eder.

Not

Power BI Desktop veri modeli 64 bit tamsayı değerlerini destekler, ancak JavaScript sınırlamaları nedeniyle Power BI görsellerinin güvenle ifade ebildiği en büyük sayı 9.007.199.254.740.991 'dir (2^53-1). Veri modelinizde daha büyük sayılar varsa, bunları görsellere eklemeden önce hesaplamalar aracılığıyla bunların boyutunu küçültebilirsiniz.

Sayı türü hesaplamalarının doğruluğu

Ondalık sayı veri türünün sütun değerleri, kayan noktalı sayılar için IEEE 754 Standard'a göre yaklaşık veri türleri olarak depolanır. Yaklaşık veri türlerinin doğası gereği duyarlık sınırlamaları vardır, çünkü tam sayı değerlerini depolamak yerine son derece yakın veya yuvarlatılmış yaklaşık değerleri depolarlar.

Kayan nokta değeri kayan nokta basamaklarının sayısını güvenilir bir şekilde ölçemiyorsa duyarlık kaybı veya kesinlik oluşabilir. Kararsızlık, bazı raporlama senaryolarında beklenmeyen veya yanlış hesaplama sonuçları olarak görünebilir.

Ondalık sayı veri türündeki değerler arasındaki eşitlikle ilgili karşılaştırma hesaplamaları beklenmeyen sonuçlar döndürebilir. Eşitlik karşılaştırmaları =eşittir , değerinden >büyük , değerinden <küçük, değerinden büyük veya eşit >=ve değerinden küçük veya eşit içerir <=.

Bu sorun en çok RANKX işlevini bir DAX ifadesinde kullandığınızda ortaya çıkar ve sonucu iki kez hesaplar ve biraz farklı sayılarla sonuçlanır. Rapor kullanıcıları iki sayı arasındaki farkı fark edemeyebilir, ancak derece sonucu belirgin bir şekilde yanlış olabilir. Beklenmeyen sonuçlardan kaçınmak için, sütun veri türünü Ondalık sayı yerine Sabit ondalık sayı veya Tamsayı olarak değiştirebilir ya da YUVARLA işlevini kullanarak zorlamalı yuvarlama yapabilirsiniz. Sabit ondalık sayı veri türü, ondalık ayırıcısının her zaman sağda dört basamağı olduğundan daha büyük duyarlıklara sahiptir.

Nadiren, Ondalık sayı veri türündeki bir sütunun değerlerini toplayan hesaplamalar beklenmeyen sonuçlar döndürebilir. Bu sonuç büyük olasılıkla hem pozitif hem de negatif sayı içeren sütunlarla elde edilir. Toplam sonucu, değerlerin sütundaki satırlar arasında dağılımından etkilenir.

Gerekli bir hesaplama, negatif sayıların çoğunu toplamadan önce pozitif sayıların çoğunu toplarsa, başlangıçtaki büyük pozitif kısmi toplam sonuçları çarpıtabilir. Hesaplama dengeli pozitif ve negatif sayılar eklerse, sorgu daha duyarlık korur ve bu nedenle daha doğru sonuçlar döndürür. Beklenmeyen sonuçlardan kaçınmak için sütun veri türünü Ondalık sayı yerine Sabit ondalık sayıveya Tamsayı olarak değiştirebilirsiniz.

Tarih/saat türleri

Power BI Desktop, Power Query Düzenleyicisi beş Tarih/Saat veri türünü destekler. Hem Tarih/Saat/Saat Dilimi hem de Süre, yükleme sırasında Power BI Desktop veri modeline dönüştürülür. Model Tarih/Saat'i destekler veya değerleri bağımsız olarak Tarih veya Saat olarak biçimlendirebilirsiniz.

  • Tarih/Saat hem tarih hem de saat değerini temsil eder. Temel alınan Tarih/Saat değeri Ondalık sayı türü olarak depolanır, böylece iki tür arasında dönüştürme yapabilirsiniz. Zaman bölümü, 1/300 saniyenin (3,33 ms) tam katlarına kadar kesir olarak depolar. Veri türü 1900 ile 9999 yılları arasındaki tarihleri destekler.

  • Tarih , yalnızca saat bölümü olmayan bir tarihi temsil eder. Tarih, kesirli değer için sıfır ile tarih/saat değeri olarak modele dönüştürülür.

  • Saat , yalnızca tarih bölümü olmayan bir saati temsil eder. Saat, ondalık ayırıcının solunda basamak olmayan bir Tarih/Saat değeri olarak modele dönüştürülür.

  • Tarih/Saat/Saat Dilimi, saat dilimi uzaklığı olan bir UTC tarih/saatini temsil eder ve modele yüklendiğinde Tarih/Saat'e dönüştürülür. Power BI modeli, saat dilimini kullanıcının konumuna veya yerel ayarına göre ayarlamaz. ABD'deki modele yüklenen 09:00 değeri, raporun açıldığı veya görüntülendiği her yerde 09:00 olarak görüntülenir.

  • Süre bir süreyi temsil eder ve modele yüklendiğinde Ondalık Sayı türüne dönüştürülür. Ondalık Sayı türü olarak, değerleri doğru sonuçlarla Tarih/Saat değerlerine ekleyebilir veya çıkarabilir ve büyüklüğünü gösteren görselleştirmelerdeki değerleri kolayca kullanabilirsiniz.

Metin türü

Metin veri türü, harf, sayı veya metin biçiminde temsil edilen tarihler olabilecek bir Unicode karakter veri dizesidir. Dize uzunluğu için pratik en yüksek sınır, Power BI'ın temel aldığı Power Query altyapısına ve metin veri türü uzunlukları üzerindeki sınırlarına bağlı olarak yaklaşık 32.000 Unicode karakterdir. Pratik üst sınırı aşan metin veri türleri büyük olasılıkla hatalara neden olabilir.

Power BI'ın metin verilerini depolama şekli, verilerin belirli durumlarda farklı görüntülenmesine neden olabilir. Sonraki bölümlerde, Metin verilerinin Power Query Düzenleyicisi verileri sorgulama ve Power BI'a yükleme arasında görünümü biraz değiştirmesine neden olabilecek yaygın durumlar açıklanmaktadır.

Büyük/küçük harfe duyarlı

Power BI'da verileri depolayan ve sorgulayan altyapı büyük/küçük harfe duyarsızdır ve harflerin farklı büyük harfe çevirmesini aynı değer olarak değerlendirir. "A", "a"ya eşittir. Ancak Power Query büyük/küçük harfe duyarlıdır ve burada "A" ile "a" aynı değildir. Büyük/küçük harf duyarlılığındaki fark, Power BI'a yüklendikten sonra metin verilerinin büyük harf kullanımını açıklanamaz şekilde değiştirdiği durumlara yol açabilir.

Aşağıdaki örnekte sipariş verileri gösterilmektedir: Her sipariş için benzersiz bir OrderNo sütunu ve sipariş zamanında el ile girilen adres adını gösteren bir Addressee sütunu. Power Query Düzenleyicisi aynı olan birkaç siparişi gösterir Sisteme girilen adres adları, büyük/küçük harfe çevrilerek değişir.

Screenshot of textual data with various capitalizations in Power Query

Power BI verileri yükledikten sonra, Veri sekmesindeki yinelenen adların büyük harfe çevrilmesi özgün girdiden büyük harfe çevirme değişkenlerinden birine dönüşür.

Screenshot that shows the textual data with changed capitalization after loading into Power BI.

Bu değişiklik, Power Query Düzenleyicisi büyük/küçük harfe duyarlı olduğundan kaynak sistemde depolandığı şekilde verileri gösterir. Power BI'da veri depolayan altyapı büyük/küçük harfe duyarlı değildir, bu nedenle bir karakterin küçük ve büyük harfli sürümleri aynı olarak ele alır. Power BI altyapısına yüklenen Power Query verileri buna göre değişebilir.

Power BI altyapısı, verileri yüklerken her satırı yukarıdan başlayarak ayrı ayrı değerlendirir. Altyapı, Addressee gibi her metin sütunu için, veri sıkıştırma yoluyla performansı geliştirmek için benzersiz değerlerden oluşan bir sözlük depolar. Altyapı, Addressee sütunundaki ilk üç değeri benzersiz olarak görür ve bunları sözlükte depolar. Bundan sonra, altyapı büyük/küçük harfe duyarsız olduğundan adları aynı olarak değerlendirir.

Altyapı , "Taina Hasu" adını "TAINA HASU" ve "Taina HASU" ile aynı olarak görür, bu nedenle bu çeşitlemeleri depolamaz, ancak depolandığı ilk varyasyona başvurur. "MURALI DAS" adı büyük harflerle gösterilir, çünkü altyapı verileri yukarıdan aşağıya yüklerken ilk kez değerlendirdiğinde ad bu şekilde görünür.

Bu görüntüde değerlendirme işlemi gösterilmektedir:

Diagram that shows the data load process and mapping text values to a dictionary of unique values.

Önceki örnekte Power BI altyapısı ilk veri satırını yükler, Addressee sözlüğü oluşturur ve Taina Hasu'ya ekler. Altyapı ayrıca yüklediği tablodaki Addressee sütununa bu değere başvuru ekler. Bu adlar büyük/küçük harf yoksayıldığında diğerleriyle eşdeğer olmadığından, altyapı ikinci ve üçüncü satırlar için aynı işlemi yapar.

Dördüncü satır için, altyapı değeri sözlükteki adlarla karşılaştırır ve adı bulur. Motor büyük/küçük harfe duyarsız olduğundan "TAINA HASU" ve "Taina Hasu" aynıdır. Altyapı sözlüğe yeni bir ad eklemez, ancak var olan ada başvurur. Kalan satırlar için de aynı işlem gerçekleşir.

Not

Power BI'da verileri depolayan ve sorgulayan altyapı büyük/küçük harfe duyarlı olmadığından, büyük/küçük harfe duyarlı bir kaynakla DirectQuery modunda çalışırken özel olarak dikkatli olun. Power BI, kaynağın yinelenen satırları ortadan kaldırdığını varsayar. Power BI büyük/küçük harfe duyarsız olduğundan, yalnızca büyük/küçük harfe göre farklılık gösteren iki değeri yinelenen olarak değerlendirirken, kaynak bunları bu şekilde ele almayabilir. Böyle durumlarda nihai sonuç tanımlanmamıştır.

Bu durumu önlemek için büyük/küçük harfe duyarlı bir veri kaynağıyla DirectQuery modunu kullanıyorsanız, kaynak sorguda veya Power Query Düzenleyicisi büyük/küçük harf kullanımını normalleştirin.

Baştaki ve sondaki boşluklar

Power BI altyapısı, metin verilerini izleyen tüm sondaki boşlukları otomatik olarak kırpsa da, verilerden önce gelen boşlukları kaldırmaz. Karışıklığı önlemek için, baştaki veya sondaki boşlukları içeren verilerle çalışırken, metnin başında veya sonundaki boşlukları kaldırmak için Text.Trim işlevini kullanmanız gerekir. Baştaki boşlukları kaldırmazsanız, yinelenen değerler nedeniyle bir ilişki oluşturulamayabilir veya görseller beklenmeyen sonuçlar döndürebilir.

Aşağıdaki örnekte müşterilerle ilgili veriler gösterilmektedir: müşterinin adını içeren bir Ad sütunu ve her giriş için benzersiz olan bir Dizin sütunu. Adlar netlik için tırnak içinde görünür. Müşteri adı dört kez yineler, ancak her seferinde baştaki ve sondaki boşlukların farklı birleşimleriyle. Bu çeşitlemeler, zaman içinde el ile veri girişiyle ortaya çıkabilir.

Row Baştaki alan Sondaki boşluk Veri Akışı Adı Dizin oluşturma Text length
1 No. Hayır "Dylan Williams" 1 14
2 Hayır Evet "Dylan Williams" 10 15
3 Yes Hayır " Dylan Williams" 20 15
4 Yes Yes " Dylan Williams " 40 16

Power Query Düzenleyicisi elde edilen veriler aşağıdaki gibi görünür.

Screenshot of textual data with various leading and trailing spaces in Power Query Editor.

Verileri yükledikten sonra Power BI'da Veri sekmesine gittiğinizde, aynı tablo öncekiyle aynı sayıda satırla aşağıdaki görüntüye benzer.

Screenshot of the same textual data after loading into Power BI returns the same number of rows as before.

Ancak, bu verileri temel alan bir görsel yalnızca iki satır döndürür.

Screenshot of a table visual based on the same data returning just two lines of data.

Yukarıdaki görüntüde, ilk satırın Dizin alanı için toplam değeri 60'tır, bu nedenle görseldeki ilk satır yüklenen verilerin son iki satırını temsil eder. Toplam Dizin değeri 11 olan ikinci satır, ilk iki satırı temsil eder. Görsel ve veri tablosu arasındaki satır sayısındaki fark, altyapının sondaki boşlukları otomatik olarak kaldırması veya kırpması ama baştaki boşlukların olmamasından kaynaklanır. Bu nedenle altyapı birinci ve ikinci satırları, üçüncü ve dördüncü satırları aynı şekilde değerlendirir ve görsel bu sonuçları döndürür.

Yinelenen değerler algılandığından, bu davranış ilişkilerle ilgili hata iletilerine de neden olabilir. Örneğin, ilişkilerinizin yapılandırmasına bağlı olarak aşağıdaki görüntüye benzer bir hata görebilirsiniz:

Screenshot of an error message about duplicate values.

Diğer durumlarda, yinelenen değerler algılandığından çoka bir veya bire bir ilişki oluşturamayabilirsiniz.

Screenshot of the relationship dialog showing a 'the cardinality you selected isn't valid for this relationship' error, which is related to duplicate values being detected.

Bu hataları baştaki veya sondaki boşluklara kadar izleyebilir ve Power Query Düzenleyicisi boşluklarını kaldırmak için Text.Trim veya Trim'i kullanarak Dönüştür'ü kullanarak düzeltebilirsiniz.

Doğru/yanlış türü

Doğru/yanlış veri türü, True veya False boole değeridir. En iyi ve en tutarlı sonuçlar için, Power BI'a Boole true/false bilgileri içeren bir sütun yüklediğinizde, sütun türünü Doğru/Yanlış olarak ayarlayın.

Power BI, belirli durumlarda verileri farklı şekilde dönüştürür ve görüntüler. Bu bölümde, Boole değerlerinin dönüştürülmesiyle ilgili yaygın durumlar ve Power BI'da beklenmeyen sonuçlar oluşturan dönüştürmelerin nasıl ele alınacağı açıklanmaktadır.

Bu örnekte, müşterilerinizin bülteninize kaydolup kaydolmadığına ilişkin verileri yüklersiniz. TRUE değeri müşterinin bültene kaydolup kaydolmadığını, YANLIŞ değeri ise müşterinin kaydolmadığını gösterir.

Ancak, raporu Power BI hizmeti yayımladığınızda, bülten kayıt durumu sütunu beklenen DOĞRU veya YANLIŞ değerleri yerine 0 ve -1 değerlerini gösterir. Aşağıdaki adımlarda bu dönüştürmenin nasıl gerçekleştiği ve nasıl önlendiği açıklanmaktadır.

Bu tablonun basitleştirilmiş sorgusu aşağıdaki görüntüde görünür:

Screenshot that shows columns set to Boolean.

Bültene Abone Olunan sütununun veri türü Herhangi biri olarak ayarlanır ve sonuç olarak Power BI verileri modele Metin olarak yükler.

Screenshot showing the data loaded into Power BI.

Müşteri başına ayrıntılı bilgileri gösteren basit bir görselleştirme eklediğinizde, veriler hem Power BI Desktop'ta hem de Power BI hizmeti yayımlandığında görselde beklendiği gibi görünür.

Screenshot of a visual that shows the data appearing as expected.

Ancak, Power BI hizmeti semantik modeli yenilediğinizde, görsellerdeki Bültene Abone Olunan sütunu değerleri DOĞRU veya YANLIŞ olarak görüntülemek yerine -1 ve 0 olarak görüntüler:

Screenshot of a visual that shows data appearing in an unexpected format after refresh.

Raporu Power BI Desktop'tan yeniden yayımlarsanız Bültene Abone Olunan sütununda beklediğiniz gibi DOĞRU veya YANLIŞ gösterilir, ancak Power BI hizmeti bir yenileme gerçekleştiğinde değerler yeniden -1 ve 0'ı gösterecek şekilde değişir.

Bu durumu önlemenin çözümü, Tüm Boole sütunlarını Power BI Desktop'ta Doğru/Yanlış yazacak şekilde ayarlamak ve raporunuzu yeniden yayımlamaktır.

Screenshot of changing the data type of the column to True/False.

Değişikliği yaptığınızda görselleştirme, Bültene Abone Olunan sütunundaki değerleri biraz farklı gösterir. Tablonun tamamı büyük harf olmak yerine, yalnızca ilk harf büyük harfe dönüştürülür. Bu değişiklik, sütunun veri türünü değiştirmenin bir sonucudur.

Screenshot of values appearing differently when you change the data type.

Veri türünü değiştirdikten, Power BI hizmeti yeniden yayımladığınızda ve bir yenileme gerçekleştiğinde, rapor değerleri beklendiği gibi True veya False olarak görüntüler.

Screenshot that shows true or false values that use the True/false data type appear as expected after refresh.

Özetlemek gerekirse, Power BI'da Boole verileriyle çalışırken sütunlarınızın Power BI Desktop'ta Doğru/Yanlış veri türüne ayarlandığından emin olun.

Boş tür

Boş , SQL null değerlerini temsil eden ve değiştiren bir DAX veri türüdür. BLANK işlevini kullanarak boş değer oluşturabilir ve ISBLANK mantıksal işlevini kullanarak boşlukları test edebilirsiniz.

İkili tür

İkili veri türünü, ikili biçimi olan tüm verileri temsil etmek için kullanabilirsiniz. Power Query Düzenleyicisi, Power BI modeline yüklemeden önce ikili dosyaları diğer veri türlerine dönüştürürseniz bu veri türünü kullanabilirsiniz.

İkili sütunlar Power BI veri modelinde desteklenmez. İkili seçim eski nedenlerle Veri Görünümü ve Rapor Görünümü menülerinde bulunur, ancak Power BI modeline ikili sütunlar yüklemeye çalışırsanız hatalarla karşılaşabilirsiniz.

Not

Sorgu adımlarının çıkışında ikili sütun varsa, verileri bir ağ geçidi üzerinden yenilemeye çalışmak hatalara neden olabilir. Sorgularınızdaki son adım olarak tüm ikili sütunları açıkça kaldırmanız önerilir.

Tablo türü

DAX, toplamalar ve akıllı zaman gösterimi hesaplamaları gibi birçok işlevde bir tablo veri türü kullanır. Bazı işlevler bir tabloya başvuru gerektirir. Diğer işlevler, daha sonra diğer işlevlere giriş olarak kullanabileceğiniz bir tablo döndürür.

Giriş olarak tablo gerektiren bazı işlevlerde, tablo olarak değerlendirilen bir ifade belirtebilirsiniz. Bazı işlevler için temel tablo başvurusu gerekir. Belirli işlevlerin gereksinimleri hakkında bilgi için bkz . DAX İşlev Başvurusu.

Örtük ve açık veri türü dönüştürme

Her DAX işlevinin giriş ve çıkış olarak kullanılacak veri türleri için belirli gereksinimleri vardır. Örneğin, bazı işlevler bazı bağımsız değişkenler için tamsayılar ve diğerleri için tarihler gerektirir. Diğer işlevler metin veya tablo gerektirir.

Bağımsız değişken olarak belirttiğiniz sütundaki veriler işlevin gerektirdiği veri türüyle uyumsuzsa, DAX hata döndürebilir. Ancak, mümkün olan her yerde DAX verileri örtük olarak gerekli veri türüne dönüştürmeyi dener.

Örneğin:

  • Bir tarihi dize olarak yazarsanız, DAX dizeyi ayrıştırır ve Windows tarih ve saat biçimlerinden biri olarak atamaya çalışır.
  • DAX örtük olarak TRUE değerini 1 sayısına dönüştürdüğünden ve 1+1 işlemini gerçekleştirdiğinden TRUE + 1 ekleyebilir ve 2 sonucunu alabilirsiniz.
  • İki sütunda bir değeri metin ("12") ve diğerini sayı (12) olarak temsil eden değerler eklerseniz, DAX dizeyi örtük olarak bir sayıya dönüştürür ve ardından sayısal sonuç için toplamayı yapar. = "22" + 22 ifadesi 44 döndürür.
  • İki sayıyı birleştirmeye çalışırsanız, DAX bunları dize olarak sunar ve sonra birleştirir. = 12 ve 34 ifadesi "1234" değerini döndürür.

Örtük veri dönüştürme tabloları

işleci, istenen işlemi yapmadan önce gereken değerlerin dökümünü alarak DAX'ın gerçekleştirdiği dönüştürme türünü belirler. Aşağıdaki tablolarda işleçler listelenmiştir ve dönüştürme DAX, kesişen hücredeki veri türüyle eşlendiğinde her veri türünde güncelleştirilir.

Not

Bu tablolar Metin veri türünü içermez. Bir sayı metin biçiminde temsil edildiğinde, bazı durumlarda Power BI sayı türünü belirlemeye ve verileri sayı olarak göstermeye çalışır.

Toplama (+)

TAMSAYI CURRENCY GERÇEK Tarih/saat
TAMSAYI TAMSAYI CURRENCY GERÇEK Tarih/saat
PARA BİRİMİ CURRENCY CURRENCY GERÇEK Tarih/saat
GERÇEK GERÇEK GERÇEK GERÇEK Tarih/saat
Tarih/saat Tarih/saat Tarih/saat Tarih/saat Tarih/saat

Örneğin, bir toplama işlemi para birimi verileriyle birlikte gerçek bir sayı kullanırsa, DAX her iki değeri de GERÇEK'e dönüştürür ve sonucu GERÇEK olarak döndürür.

Çıkarma (-)

Aşağıdaki tabloda satır üst bilgisi minuend (sol taraf) ve sütun üst bilgisi ise çıkarma (sağ taraf) şeklindedir.

TAMSAYI CURRENCY GERÇEK Tarih/saat
TAMSAYI TAMSAYI CURRENCY GERÇEK GERÇEK
PARA BİRİMİ CURRENCY CURRENCY GERÇEK GERÇEK
GERÇEK GERÇEK GERÇEK GERÇEK GERÇEK
Tarih/saat Tarih/saat Tarih/saat Tarih/saat Tarih/saat

Örneğin, çıkarma işlemi başka bir veri türüyle bir tarih kullanıyorsa, DAX her iki değeri de tarihe dönüştürür ve dönüş değeri de bir tarihtir.

Not

Veri modelleri birli işlecini (negatif) destekler, ancak bu işleç işlenenin veri türünü değiştirmez.

Çarpma (*)

TAMSAYI CURRENCY GERÇEK Tarih/saat
TAMSAYI TAMSAYI CURRENCY GERÇEK TAMSAYI
PARA BİRİMİ CURRENCY GERÇEK CURRENCY CURRENCY
GERÇEK GERÇEK CURRENCY GERÇEK GERÇEK

Örneğin, çarpma işlemi bir tamsayıyı gerçek sayıyla birleştirirse, DAX her iki sayıyı da gerçek sayılara dönüştürür ve dönüş değeri de GERÇEK olur.

Bölme (/)

Aşağıdaki tabloda satır üst bilgisi payda, sütun başlığı ise paydadır.

TAMSAYI CURRENCY GERÇEK Tarih/saat
TAMSAYI GERÇEK CURRENCY GERÇEK GERÇEK
PARA BİRİMİ CURRENCY GERÇEK CURRENCY GERÇEK
GERÇEK GERÇEK GERÇEK GERÇEK GERÇEK
Tarih/saat GERÇEK GERÇEK GERÇEK GERÇEK

Örneğin, bölme işlemi bir tamsayıyı para birimi değeriyle birleştirirse, DAX her iki değeri de gerçek sayılara dönüştürür ve sonuç da gerçek bir sayıdır.

Karşılaştırma işleçleri

Karşılaştırma ifadelerinde DAX, dize değerlerinden büyük Boole değerlerini ve sayısal veya tarih/saat değerlerinden büyük dize değerlerini dikkate alır. Sayılar ve tarih/saat değerleri aynı dereceye sahiptir.

DAX, Boole veya dize değerleri için örtük dönüştürme yapmaz. BLANK veya boş bir değer, karşılaştırılan diğer değerin veri türüne bağlı olarak 0, "" veya False'a dönüştürülür.

Aşağıdaki DAX ifadeleri bu davranışı gösterir:

  • =IF(FALSE()>"true","Expression is true", "Expression is false") "İfade true" değerini döndürür.

  • =IF("12">12,"Expression is true", "Expression is false") "İfade true" değerini döndürür.

  • =IF("12"=12,"Expression is true", "Expression is false") "İfade yanlış" değerini döndürür.

DAX, aşağıdaki tabloda açıklandığı gibi sayısal veya tarih/saat türleri için örtük dönüştürmeler yapar:

Karşılaştırma
İşleç
TAMSAYI CURRENCY GERÇEK Tarih/saat
TAMSAYI TAMSAYI CURRENCY GERÇEK GERÇEK
PARA BİRİMİ CURRENCY CURRENCY GERÇEK GERÇEK
GERÇEK GERÇEK GERÇEK GERÇEK GERÇEK
Tarih/saat GERÇEK GERÇEK GERÇEK Tarih/Zaman

Boşluklar, boş dizeler ve sıfır değerleri

DAX aynı yeni değer türü olan BLANK değeriyle null, boş değer, boş hücre veya eksik bir değeri temsil eder. Blank işlevini kullanarak boş değerler oluşturabilir veya ISBLANK işlevini kullanarak boşlukları test edebilirsiniz.

Toplama veya birleştirme gibi işlemlerin boşlukları nasıl işlediği tek tek işleve bağlıdır. Aşağıdaki tabloda DAX ve Microsoft Excel formüllerinin boşlukları işleme şekli arasındaki farklar özetlenmiştir.

Expression DAX Excel
BLANK + BLANK BLANK 0 (sıfır)
BLANK + 5 5 5
BLANK * 5 BLANK 0 (sıfır)
5/BOŞ Infinity Hata
0/BOŞ NaN Hata
BOŞ/BOŞ BLANK Hata
FALSE VEYA BLANK FALSE FALSE
FALSE VE BLANK FALSE FALSE
DOĞRU VEYA BOŞ TRUE TRUE
DOĞRU VE BOŞ FALSE TRUE
BOŞ VEYA BOŞ BLANK Hata
BOŞ VE BOŞ BLANK Hata

Power BI Desktop ve verilerle her türlü işlemi yapabilirsiniz. Power BI özellikleri hakkında daha fazla bilgi için aşağıdaki kaynaklara bakın: