MYSQL OR与AND一起 的用法

2018-03-26 18:05:09

MYSQL OR与AND一起 的用法

在MySQL中 or 的用法

Student表格数据

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

查询结果

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

查询结果

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

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

//正确SQL

SELECT
    *FROM
    ewin_should_receive sr,
    ewin_client_snap csWHERE
    sr.client_snap_id = cs.idAND sr.b_enable = '1'AND (
    cs.INVOICE_TITLE LIKE '%12%'
    OR cs.CLIENT_NAME LIKE '%12%')
  • 2019-12-30 16:48:41

    vue provide/inject详解和用法

    父子组件交互方式多种,props、vuex、 、 emit、localStorage还有就是这个provide/inject了。它适合层级比较深的组件,比如子,子孙,子孙后代的组件有好几个用到父组件的某个属性,就可以用到这个provide/inject,它可以避免写大量繁琐的传值代码 我这里为什么要使用它? 我一个知识库详情父组件中包含了大量的子组件,每个子组件都需要父组件的知识库ID,这时候我不想写大量props,就用到provide/inject进行传值了

  • 2020-01-03 00:36:00

    break和continue详解for循环

    1. break:直接跳出当前循环体(while、for、do while)或程序块(switch)。其中switch case执行时,一定会先进行匹配,匹配成功返回当前case的值,再根据是否有break,判断是否继续输出,或是跳出判断(可参考switch的介绍)。 2. continue:不再执行循环体中continue语句之后的代码,直接进行下一次循环。