我正在验证表中是否存在一组字段值(例如:yyy,aaa和ccc),并且使用UNION来收集我的结果,更喜欢更优雅高效的解决方案:
TableName :Example_Table
名称|班级
xxx | CSE <BR>
yyy | EE <BR>
zzz | MECH <BR>
aaa | CSE <BR>
bb | CSE <BR>
我的查询:
SELECT IF(Name IS NULL,"yyy ","")
FROM Example_Table where (Name LIKE '%yyy%')
UNION
(SELECT IF(Name IS NULL,"aaa ","")
FROM Example_Table where (Name LIKE '%aaa%'))
UNION
(SELECT IF(Name IS NULL,"ccc ","")
FROM Example_Table where (Name LIKE '%ccc%'));
我需要知道表中没有我需要的字符串值。问题是,我使用的表有大约数千个元组,并且使用UNION似乎非常昂贵..
答案 0 :(得分:0)
寻找字符串永远不会优雅;)但如果您想缩短代码,请尝试IN
。与......类似的东西。
...WHERE Name IN ('yyy','aaa','ccc')....