Mysql数据库中条件查询

1.concat(字符串拼接)

作用:将选中的列进行拼接  写法 AS的作用就是属性名

SELECT CONCAT(ename,job) AS 你猜 FROM emp;

2.条件查询

语法:

select 

  查询列表

from

  表明

where

  筛选条件

先执行 form  再执行 where 筛选  最后执行  select 

分类:

一,按照条件表达式

>    <       =     !=       <>      >=       <=

二,逻辑表达式

&&  ||   !

三,模糊查询

like

between and 

in 

is null

 

案例:

一  条件表达式筛选

1.查询工资>12000的员工信息

SELECT * FROM emp WHERE sal>1200;

2.查询部门编号不等于90号员工名和部门编号

SELECT ename,empno FROM emp WHERE empno!=7369;

SELECT ename,empno FROM emp WHERE empno<>7369;

二  按照逻辑表达式筛选

作用:用于连接条件表达式

&&    和 and :两个条件都为true 结果为true 反之为false

|| 或  or  :只要有一个条件为true  结果为true 反之为false

! 或 not :条件本身为false结果为true

 

例子:

1.查询工资再1000到2000的之间员工的姓名,工资和奖金

SELECT ename,mgr,sal FROM emp WHERE mgr>1000 AND mgr<9000;

2.查询部门编号不是在7000到7500之间,或者工资高于7000的员工信息

SELECT * FROM emp WHERE !(empno>7000 AND empno<7500) || mgr>7500;

 

三   模糊查询

查询员工名包含字符a的员工信息

SELECT * FROM emp WHERE ename LIKE '%a%';

(假如说找第三个字母为a第五个为b中间用 _ 来代替)

like '__a_b%'

用  \ 来转义

2.between and 

查询员工编号在7000到7500之间员工信息

 SELECT * FROM emp WHERE empno BETWEEN 7000 AND 7500;

3.in

查询员工的工作 SALESMAN,MANAGER,CLERK中的一个员工的姓名和编号

SELECT ename,empno FROM emp WHERE job IN('SALESMAN','MANAGER','CLERK');

 4. is null

查询没有奖金的员工名和奖金率

SELECT ename,comm FROM emp WHERE comm IS NULL;

5.安全等于 <=> 

查询没有奖金的员工名和奖金率

SELECT ename,comm FROM emp WHERE comm <=> NULL;

 

posted @ 2019-08-26 23:24  new海  阅读(723)  评论(0编辑  收藏  举报