【发布时间】:2019-05-02 10:55:34
【问题描述】:
我怎样才能只得到行,其中 2 个(或更多)许多的 Where 子句是真的?
例如:
SELECT *
FROM A
WHERE CONVERT(AES_DECRYPT(name,'".$this->key."'),CHAR) LIKE '%".$this->escape($name)."%'"
OR CONVERT(AES_DECRYPT(name2,'".$this->key."'),CHAR) = '".$this->escape($name2)."'"
OR CONVERT(AES_DECRYPT(name3,'".$this->key."'),CHAR) = '".$this->escape($name3)."'"
OR CONVERT(AES_DECRYPT(name4,'".$this->key."'),CHAR) = '".$this->escape($name4)."'"
.....
有没有一种简单的方法可以只获得 2 个(或更多)匹配的结果,而无需创建巨大的 SQL 语句(每列与其他列 - (name AND name2) OR (name AND name3) OR (name AND名称4) 或...)
【问题讨论】:
-
会不会正好是 4 个 LIKE 条件或更多?
-
不同,我在运行时生成 SQL(LIKE 和“=”),但 Nick 完美解决了问题。
标签: mysql sql select where-clause