0

我在面试中问了一个问题

具有以下字段“price”、“tool”、“range_max”、“range_min”、“age_of_tool”的表单也可以为 NULL。

你将如何实现对表查询的搜索?

我的回答是

我会在搜索时使用“AND”...
你认为我应该给他们什么是正确的查询?

4

2 回答 2

3

就个人而言,我认为他们正在寻找基于可用条件的智能搜索想法,而不是您要使用的逻辑连接条件。

与 Ajay 所说的相反,AND 搜索更合适。在 Internet 上搜索内容时,请从您自己的角度考虑。如果您查找“红色”事物和“小”事物,您会期望搜索结果仅包含红色的小事物。

否则,请查看这些字段。他们几乎告诉你你需要搜索什么。例如,任何使用“range_min”来区分的东西几乎总是:-

WHERE [SomeValue] > range_min

从逻辑上考虑如何在搜索中使用每个字段,您可能会比您在这个问题上收到的任何现成的答案更好地理解。

于 2012-07-17T08:30:19.910 回答
0

不,如果你想在每一列中搜索,你应该使用OR代替。AND

因为当我们使用ANDthen 值必须存在于所有列中但OR如果它存在于一列中,它将根据您指定的搜索条件向您显示一些记录。

于 2012-07-17T08:24:56.047 回答