![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICMyYTMvw1dvwlMvwlM3VWaWV2Zh1Wa-cWZwpmLkZTZwgjZkN2M5AzYkVGM1cjZkhzY2kzYkFWO5EDZjhzLcRTM3YTN5gzLcVmdhNXLwRHdo9CXt92YucWbpRWdvx2Yx5yazF2Lc9CX6MHc0RHaiojIsJye.jpeg)
通配符
通配符這個概念可以說是資料庫語言中很重要的一塊。
重要的原因想必各位小夥伴也可以猜的到,數倉的資料量級通常都是比較大的,很多時候我們做資料查詢,并不能完全保證自己的查詢條件是準确的,或者說我們需要模糊查詢來擷取一類資料,這種情況下通配符是很有用的。
相較于SQL,PowerBI使用通配符的機會并不多見。
根本原因在于二者的定位不同。PowerBI側重于資料的前端展示,SQL是後端的資料清洗以及存儲。
SQL通配符類别
通配符 | 描述 |
---|---|
% | 替換一個或多個字元 |
_ | 替換一個字元 |
[清單] | 提供範圍 |
[^清單] | 不在提供範圍 |
[!清單] | 不在提供範圍 |
注:通配符必須與LIKE搭配使用。
使用執行個體
案例資料:
在白茶本機的資料庫中,存在名為“TEST”的資料庫,存在名為“産品表”的案例資料。
例子1:
在PowerBI中擷取産品表[商品名稱]開頭為“童”的所有資料。
SELECT * FROM 産品表 WHERE 商品名稱 LIKE N'童%'
複制
結果如下:
例子2:
在PowerBI中擷取産品表[商品名稱]結尾為“褲”的所有資料。
SELECT * FROM 産品表 WHERE 商品名稱 LIKE N'%褲'
複制
結果如下:
例子3:
在PowerBI中擷取産品表[商品名稱]中間包含“兒”的所有資料。
SELECT * FROM 産品表 WHERE 商品名稱 LIKE N'%兒%'
複制
結果如下:
例子4:
在PowerBI中擷取産品表[商品名稱]中間包含“兒”且字元數為3所有資料。
SELECT * FROM 産品表 WHERE 商品名稱 LIKE N'_兒_'
複制
結果如下:
例子5:
在PowerBI中擷取産品表[商品名稱]開頭包含“口、嬰、童”的所有資料。
SELECT * FROM 産品表 WHERE 商品名稱 LIKE N'[口嬰童]%'
複制
結果如下:
例子6:
在PowerBI中擷取産品表[商品名稱]開頭不包含“口、嬰、童”的所有資料。
SELECT * FROM 産品表 WHERE 商品名稱 LIKE N'[^口嬰童]%'
複制
結果如下:
這裡是白茶,一個PowerBI的初學者。