我是 SQL 編程的新手,我正在創建一個表做幾個案例,事實是我有以“.sas”結尾的檔案,我想把這些作為程式,然后是我想要的其他“.sas7bdat”我把它們作為表格,我在做這一切的時候,問題是當我說當 t1.var1 包含'.sas'的情況時,我也看到 .sas7bdat',我只是希望它完全匹配.sas 將其與表格區分開來。
有誰知道我該怎么做?我給你我的代碼:
PROC SQL;
CREATE TABLE test AS
SELECT t2.var1,
t1.var2,
t1.var3,
t1.var4,
t1.var5,
t1.vr6,
t1.var7,
t2.var8,
t2.var9,
CASE
WHEN t1.var1 contains '.log' THEN
'LOG'
WHEN t1.var1 contains '.csv' OR '.xlsx' THEN
'FICHERO'
WHEN t1.var1 contains '.sas7bdat' THEN
'TABLA'
WHEN t1.var1 contains '.sas' THEN
'PROGRAMA'
END AS var10
FROM origin AS t1
LEFT JOIN test2 t2
ON t1.var3 = t2.var2
WHERE var5 IS NOT NULL
ORDER BY var5 DESC;
QUIT;
我也嘗試過類似但它沒有回傳我想要的
uj5u.com熱心網友回復:
使用like '%.extension':
CASE
WHEN t1.var1 like '%.log' THEN
'LOG'
WHEN t1.var1 like '%.csv' OR t1.var1 like '%.xlsx' THEN
'FICHERO'
WHEN t1.var1 like '%.sas7bdat' THEN
'TABLA'
WHEN t1.var1 like '%.sas' THEN
'PROGRAMA'
END AS var10
注意還糾正了一個小語法問題:您不能使用運算式t1.var1 contains '.csv' OR '.xlsx'。您必須重復該操作,例如t1.var1 contains '.csv' OR t1.var1 contains '.xlsx'
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/447903.html
上一篇:回傳左連接中的最后一個非空值
