首页 > 技术文章 > MySQL数据库where查询条件有哪些?

eliwang 2020-12-28 16:07 原文

使用where子句对表中的数据筛选,结果为true的行会出现在结果集中,语法如下:

select * from 表名 where 条件;

where后面的筛选条件有以下5种:

1.比较运算符

  • 等于:=

  • 大于:>

  • 大于等于:>=

  • 小于:<

  • 小于等于:<=

  • 不等于:!=

通过以下几个例子来加深理解:

 

  • 查询没被删除的学生
    select * from students where isdelete=0;

 

  • 查询编号大于3的学生
    select * from students where id>3;
  • 查询编号不大于4的科目
    select * from subjects where id<=4;
  • 查询姓名不是“黄蓉”的学生
    select * from students where sname!='黄蓉';

     

2.逻辑运算符

  • and

  • or

  • not

例如:

  • 查询编号大于3的女同学
    select * from students where id>3 and gender=0;
  • 查询编号小于4或没被删除的学生
    select * from students where id<4 or isdelete=0;

     

3.模糊查询

  • like

  • %表示任意多个任意字符

  • _表示一个任意字符

例:

  • 查询姓黄的学生

    select * from students where sname like '黄%';
  • 查询姓黄并且名字是一个字的学生
    select * from students where sname like '黄_';
  • 查询姓黄或叫靖的学生
    select * from students where sname like '黄%' or sname like '%靖%';

 

4.范围查询

  • in表示在一个非连续的范围内

  • between ... and ...表示在一个连续的范围内

例:

  • 查询编号是1,3,8的学生

    select * from students where id in(1,3,8);
  • 查询编号是3-8的学生
    select * from students where id between 3 and 8;

 

5.空判断

  • 注意:null与空字符串''是不同的

  • 判空is null

  • 判非空is not null

例:

  • 查询没有填写地址的学生
    select * from students where hometown is null;
  • 查询填写了地址的女生
    select * from students where hometown is not null and gender=0;

 

推荐阅读