您好,欢迎来到保捱科技网。
搜索
您的当前位置:首页MYSQL OR与AND同时出现的用法

MYSQL OR与AND同时出现的用法

来源:保捱科技网

表中数据

MySQL中or和and的用法

SELECT * from student WHERE id = 1 or id = 2 AND age = 20;
-- 查询结果是id = 2且age = 20或者id=1

 

SELECT * from student WHERE (id = 1 or id = 2 ) AND age = 20;
-- 查询结果是 id=1或id=2 且age = 20

 

问题记录:要求查出 INVOICE_TITLE like ‘12%’或者CLIENT_NAME LIKE ‘%12%’的数据,结果前台一直报请求超时,发现数据多了将近20倍,SQL如下:

SELECT
    *
FROM
    ewin_should_receive sr,
    ewin_client_snap cs
WHERE
    sr.client_snap_id = cs.id
AND sr.b_enable = '1'
AND cs.INVOICE_TITLE LIKE '%12%'
OR cs.CLIENT_NAME LIKE '%12%'

正确SQL:

SELECT
    *
FROM
    ewin_should_receive sr,
    ewin_client_snap cs
WHERE
    sr.client_snap_id = cs.id
AND sr.b_enable = '1'
AND (
    cs.INVOICE_TITLE LIKE '%12%'
    OR cs.CLIENT_NAME LIKE '%12%'
)

 

 

转载于:https://www.cnblogs.com/sueyyyy/p/10448836.html

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baoaiwan.cn 版权所有 赣ICP备2024042794号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务