如果我在 MySQL 中运行这样的查询:
SELECT field FROM table WHERE field1=42 AND field2 LIKE '%beer%';
每行都会被解析为 field2
中含有“啤酒”吗?或仅那些 field1
=42?
最佳答案
这取决于查询计划以及表上有哪些索引。尝试将 EXPLAIN
放在查询之前,MySQL 会告诉您更多信息。但一般来说,如果 field1
已建立索引,则应仅对 field1
为 42 的行执行 LIKE
。
关于MySQL:AND 是条件式还是逻辑式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8790245/