MYSQL OR与AND同时出现的用法

在MySQL中 or 的用法

20170921155057689.png

-- 查询结果是id = 2且age = 20或者id=1

SELECT * from student WHERE id = 1 or id = 2 AND age = 20;

20170921155238534.png

-- 查询结果是 id=1或id=2 且age = 20

SELECT * from student WHERE (id = 1 or id = 2 ) AND age = 20;

20170921155451929.png

犯错记录:要求查出 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%'
)

————————————————

版权声明:本文为CSDN博主「Yi_Cui_1207」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/Yi_cui_1207/article/details/81187126

版权声明:
作者:WaterBear
链接:https://l-t.top/2132.html
来源:雷霆运维
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>
文章目录
关闭
目 录