SQL - 如果输入字符串为空 return 所有行,否则尝试匹配
SQL - If input string is empty return all rows , otherwise try to match
我有 table 匹配项 与这些列:
|sport|region|country|league
如果 sport 的输入字符串是空的,我想 return 一切,不要为匹配的地区、国家等而烦恼
如果 sport 不为空,则查找具有匹配运动的行并继续到 region 并执行相同的操作.
这可以在 SQL 中完成吗?我知道我可以在 PHP 中过滤掉它,然后 运行 不同的 SQL 查询。
试试这个
WHERE (sport_param IS NULL OR sport_column = sport_param)
您可能想要使用 LIKE
运算符或考虑不区分大小写的检查,而不是简单地比较确切的运动。
看看this
...你基本上可以在 SQL 中做一个 if 语句来匹配 sport 是否为空,并根据它执行两个不同的查询。
我有 table 匹配项 与这些列:
|sport|region|country|league
如果 sport 的输入字符串是空的,我想 return 一切,不要为匹配的地区、国家等而烦恼
如果 sport 不为空,则查找具有匹配运动的行并继续到 region 并执行相同的操作.
这可以在 SQL 中完成吗?我知道我可以在 PHP 中过滤掉它,然后 运行 不同的 SQL 查询。
试试这个
WHERE (sport_param IS NULL OR sport_column = sport_param)
您可能想要使用 LIKE
运算符或考虑不区分大小写的检查,而不是简单地比较确切的运动。
看看this ...你基本上可以在 SQL 中做一个 if 语句来匹配 sport 是否为空,并根据它执行两个不同的查询。