我有一个我正在尝试运行的查询,我希望按多个条件进行筛选,但我似乎无法找到一种方法,这里是我的代码:
WHERE (AL1.X_ult=AL6.X_ult)
AND (AL1.X_number LIKE '%123456789'
AND AL1.X_number LIKE '%1234567882'
我是SAS的新手,我想知道如何使用LIKE来过滤多个条件,或者是我应该使用的另一个操作符,因为当我只运行时:
WHERE (AL1.X_ult=AL6.X_ult)
AND (AL1.X_number LIKE '%123456789'
它运行正常,但我想过滤掉多个数字,如
WHERE (AL1.X_ult=AL6.X_ult)
AND (AL1.X_number LIKE '%123456789'
AND AL1.X_number LIKE '%1234567882'
AND AL1.X_number LIKE '%1234534882'
AND AL1.X_number LIKE '%1234512882'
AND AL1.X_number LIKE '%1234586882'
AND AL1.X_number LIKE '%1233921882'
任何帮助都会非常感激,同样值得注意的是,我的LIKE中的多个数字与那些9位数字相匹配,所以我想拉入其中包含这些数字的所有数字。
答案 0 :(得分:1)
好像你需要“或”吗?
WHERE (AL1.X_ult=AL6.X_ult)
AND (AL1.X_number LIKE '%123456789'
OR AL1.X_number LIKE '%1234567882'
OR AL1.X_number LIKE '%1234534882'
OR AL1.X_number LIKE '%1234512882'
OR AL1.X_number LIKE '%1234586882'
OR AL1.X_number LIKE '%1233921882')
您可以像以下一样获得其中一些:
WHERE (AL1.X_ult=AL6.X_ult)
AND (AL1.X_number LIKE '%123456789'
OR AL1.X_number LIKE '%12345%882'
OR AL1.X_number LIKE '%1233921882')
但这取决于你不想要的其他模式......
正则表达式是这类事物的下一个“升级”,但它们仍然需要你有一些逻辑模式。