当前位置: 首页 > 面试题库 >

SQL语句忽略了where参数

谢典
2023-03-14
问题内容
SELECT * FROM people 
WHERE
university='2' 
AND MATCH (lname,fname) AGAINST ('+massive' IN BOOLEAN MODE) 
OR (fname LIKE '%box%' OR lname LIKE '%box%')

该查询允许对结果进行过滤,而不是对university='2'我将如何更新的结果进行过滤,因此它仅严格显示大学= 2时的结果

我将全文搜索与LIKE结合使用的原因是,由于全文搜索具有的最小字母数,并且由于我处于共享主机计划中,因此无法修改设置。结果,我将全文和LIKE结合在一起以适应


问题答案:

修正括号

SELECT * FROM people 
WHERE
    university='2' 
    AND (MATCH (lname,fname) AGAINST ('+massive' IN BOOLEAN MODE) 
         OR fname LIKE '%box%' 
         OR lname LIKE '%box%')

AND具有比更高的优先级OR,因此university = '2'只能与结合使用MATCH,而不能与fname/lname测试结合使用。



 类似资料:
  • 问题内容: 我的脚本很长,我希望能够在需要时仅运行整个文件,而不用担心它的某些部分是否已经运行。但是下面的脚本给我带来了问题。由于某些原因,即使列’EntityID’和’EntityType’不存在,它也将通过IF语句,在这种情况下,它不应通过IF语句。有人可以告诉我怎么了吗? 表的脚本 错误: 问题答案: 马丁绝对是有东西的。里面的东西是由在分析时解析器处理,而忽略你是否会做成。这是您不能执行的

  • 问题内容: 我有一个存储过程,可根据4个参数从表中获取信息。 我想基于参数获取值,但是如果参数为NULL,则不会检查该参数。因此,如果所有4个参数都为null,则将显示整个表。 这是我的SP(如您所见,这仅适用于1个参数atm): 有什么方法可以做到, 而 不必为每种可能的组合都加一个(15个IF)? 问题答案: 怎么样 在这种情况下,您可能还使用了 但总的来说,您可以尝试类似

  • 问题内容: 我将如何在没有硬编码值的情况下编写此sql语句? 宁愿有这样的事情: 提前致谢.. 问题答案: 用您当前的方式构造SQL查询是一个糟糕的主意,因为它为各种SQL注入攻击打开了大门 。为了正确执行此操作,您必须改为使用“ 预备语句”。这也将解决您目前显然遇到的各种逃避问题。 请注意,这是一个昂贵的调用(除非您的应用程序服务器使用语句缓存和其他类似的功能)。从理论上讲,最好先准备一次语句,

  • 问题内容: 我们的许多模块都始于: …这是整个文件中唯一的Pyflakes警告: 我如何让Pyflakes忽略这一点? (通常我会去阅读文档,但是链接断开了。如果没有人回答,我只会阅读源代码。) 问题答案: 如果您可以改用flake8-包裹pyflakes和pep8 checker-则以 (其中的空间显著-代码的结束和2米之间的空间之一,它和之间,文本)将告诉检查忽略该行的任何错误。

  • 问题内容: 我有一个实体,该实体与另一个用@Where注释的实体有关联,就像这样 最近不可避免的事情发生了,我需要加载不符合@Where子句的EntityB。我可以删除@Where批注,但是它使用很多,所以理想情况下,我不想这样做。除了手动加载EntityB列表之外,还有另一个查询,我还有哪些选择?我可以告诉Hibernate忽略@Where注释吗? 问题答案: 经过大量研究,这似乎是不可能的。我

  • 问题内容: SQL不是我的强项,但是我无法弄清楚为什么它不起作用。我只是想基于一个值运行一个不同的AND语句。具体来说,如果foo =0,我想在dateDiff函数中更改datePart 问题答案: 试试这个-