SQL - 如果输入字符串为空,则返回所有行,否则尝试匹配

时间:2016-06-14 09:21:25

标签: mysql sql where

我的表匹配与这些列:

|sport|region|country|league 
  1. 如果 sport 的输入字符串为空,我想返回所有内容,不要打扰匹配的地区,国家等。

  2. 如果运动不为空,则查找匹配运动的行并继续区域并执行相同的操作。

  3. 这可以在SQL中做到吗?我知道我可以在PHP中过滤掉它,然后运行不同的SQL查询。

2 个答案:

答案 0 :(得分:0)

试试这个

WHERE (sport_param IS NULL OR sport_column = sport_param)

您可能希望使用LIKE运算符或考虑不区分大小写的检查,而不是简单地比较确切的运动。

答案 1 :(得分:0)

看看this ...你基本上可以在SQL中创建一个if语句,以匹配sport是否为空,并根据执行两个不同的查询。