【发布时间】:2020-01-02 09:45:56
【问题描述】:
是否可以结合SQL语句如
SELECT * FROM X WHERE Y LIKE '%a%' OR Y LIKE '%b%' OR Y LIKE '%c%' OR Y LIKE '%d%'
类似的东西
SELECT * FROM X WHERE Y IN ('a', 'b', 'c', 'd')
所以我不必像现在这样写一篇大的声明:
IF NOT EXISTS(SELECT * FROM X WHERE Y LIKE '%a%' OR Y LIKE '%b%' OR Y LIKE '%c%' OR Y LIKE '%d%')
BEGIN
/* code */
END
使用SELECT * FROM X WHERE Y IN LIKE ('%a%', '%b%', etc..) 之类的东西会很好
感谢所有帮助和建议,谢谢。
【问题讨论】:
-
查看您正在使用的 dbms 的正则表达式。
-
在 SQL Server 中,您可以执行
WHERE y LIKE '%[a-d]%'。但对我来说,这似乎是一个糟糕的数据库设计。 -
您使用的是哪种 DMS 产品?
-
真正的问题是:你在
if部分做什么?为什么不简单地将 WHERE 子句附加到您在其中所做的任何事情上?