MySQL QUERY条件

时间:2012-12-10 15:05:49

标签: mysql sql

我尝试搜索我的网站。示例:让字段名称=城市,如果城市为空,我的查询会显示:SELECT * FROM TABLE WHERE CITY = ALL;

我不知道怎么写:CITY = ALL正确,表达式CITY is not null会很复杂,因为我应该删除=

5 个答案:

答案 0 :(得分:1)

完全删除where

SELECT * FROM TABLE 

SELECT * FROM TABLE WHERE CITY = @searchstring or @searchstring is null;

答案 1 :(得分:1)

试试这个:

SELECT *
FROM Table 
WHERE @SearchParam IS NULL OR City = @SearchParam 

如果将参数@SearchParam传递给具有NULL值的查询,则它将返回表中的所有数据,否则将使用此参数搜索城市。

答案 2 :(得分:1)

如果您不关心非常优化的查询,可以使用like运算符与

进行比较
City like '%@exp'

如果exp为空,则查询返回所有城市。

我个人不推荐这个:)

一切顺利

答案 3 :(得分:0)

如果你全部收到它们,为什么要使用WHERE条款?

SELECT * FROM TABLE

注意,您应该尽可能避免使用SELECT *。由于浪费资源,因此请务必明确返回您的列。

答案 4 :(得分:0)

也许是这样的?

SELECT * FROM TABLE WHERE (CITY = SOMETHING) OR (SOMETHING is null);