MySQL数据库条件查询

语法

select 查询列表 from 表名 where 查询条件;

查询顺序

先查对应的表,根据查询条件筛选表中记录,显示符合条件的对应查询列表

分类

  • 按条件表达式查询

           条件运算符 :>,<,=,!=,<>,<=,>=

  • 大于:
        select * from `employees` where `salary`>3000
    不等于:
        select `email`,`salary` from `employees` where `salary`!=10000;
        或
        select `email`,`salary` from `employees` where `salary`<>10000;
  • 按逻辑表达式查询

           逻辑运算符:用于连接条件运算符 and or not(对应于java中的&&,||,!)  

  • select `email` from `employees`where `salary`>=3000 and `salary`<=5000
    
    select * from `employees` where not (`department_id`>=90 and `department_id`<=110) or `salary`>15000
  • 模糊查询

            查询关键字:like,between...and...,in,IS NULL(为空),IS NOT NULL(不为空)

  • select * from `employees` where `last_name` like '%li%';
    select * from `employees` where `last_name` like '__n_l%';
    select * from `employees` where `last_name` like '_a_%' ESCAPE 'a';
    like关键字通常与通配符一起使用
        通配符:
            %:任意多个字符,包括零个
            _: 任意单个字符
    注:通过ESCAPE可将任意一个字符指定为转义字符。
    
  • select `email` from `employees`where `salary` between 3000 and 5000
    between(x)and(y):指处在x~y之间的值(包含临界值)
  • select * from `employees` where `salary` in(3000,5000,10000);
    in(x,y,z,...):满足查询条件x,y,z...中的一个即可
                  条件值得类型必须一致或兼容

排序查询

  • 语法
  • select 查询列表 from 表名 [where 查询条件] order by 排序列表 【asc|desc】;
    从高到低:select * from `employees` order by `salary` desc;
    从低到高:select * from `employees` order by `salary` asc;
  • 查询示例
  • 按函数排序:select * from `employees` ORDER BY length(`last_name`) ASC;
    
    先降序再升序:SELECT * FROM `employees` ORDER BY `salary` DESC , LENGTH(`last_name`) ASC

猜你喜欢

转载自blog.csdn.net/zyp1376308302/article/details/81948703