【发布时间】:2016-05-10 22:58:11
【问题描述】:
我想在 SQL 中搜索具有多个条件的 student,例如:name、age。但是我们可能只有 name 或只有 age 值,或者我们可能拥有来自 user 的信息的所有值。我使用HTML 中的表单来获取值。如果他们没有填写所有文本字段,我不知道如何编写查询来选择。
如果我只有名称值,则查询是
SELECT * FROM stuTBL WHERE name = @name
如果我只有age 值,则查询是
SELECT * FROM stuTBL WHERE age = @age
如果我有所有值,则查询是
SELECT * FROM stuTBL WHERE name = @name AND age = @age
但是什么查询将涵盖任何用户输入?
【问题讨论】:
-
您可以使用
LIKE而不是=(需要转义%和_)并且当您对%中的内容没有价值时(尽管其他解决方案可能会更好,除非你想要更多的控制)。 -
通常:
WHERE (age = @age or @age is null) ...
标签: sql