创新路
我们一直在努力

MySql数据库Select条件查询

select条件查询的格式如下:

SELECT     查询列表     FROM  表名    WHERE筛选条件;

 

根据筛选条件可以分为以下几类:

按照条件按表达式进行筛选

常用条件运算符如下:> <=!=<><=>=

按照逻辑表达式进行筛选

逻辑运算符的主要作用:用于连接条件表达式

& || !

模糊查询

likebetween and inis null

 

like通常和通配符搭配使用:

①:%:代表任意多个字符

②:_:代表任意单个字符

 

举个栗子:

查询员工工资大于10000的员工信息

SELECT * FROM employees WHERE salary > 10000;

 

查询部门标号不等于90号的员工名和部门编号

SELECT name,department_id FROM employees WHERE department_id <> 90;

 

查询工资在1000-2000之间的员工名,工资

SELECT name,salary FROM employees WHERE salary >= 1000 and salary <=2000;

 

like

 

查询员工名中包含a的员工信息

SELECT * FROM employeess WHERE last_name like '%a%';

 

查询员工名中第三个字符为n,第五个字符为m的员工信息

SELECT * FROM employees WHERE last_name like '__n_m%';

 

查询员工名中第二个字符_的员工信息

方法一:使用转义字符"\"

SELECT * FROM employees WHERE last_name like '_\_%';

方法二:自定义转义字符

SELECT * FROM employees WHERE last_name like '_$_%' ESCAPE '$';

between and in

查询员工工资在1000-2000之间的员工信息(包含临界值)

SELECT * FROM employees WHERE salary BETWEEN 1000 AND 2000;

 

查询员工工种编号为IT_PROGAD_VPAD_PRES中的一个员工名和工种编号

方法一:

SELECT job_id,last_name FROM employees

WHERE job_id ='IT_PROG' OR

        job_id ='AD_VP' OR

        job_id ='AD_PRES'

方法二:

SELECT job_id,last_name FROM employeess

WHERE job_id in ('IT_PROG','AD_VP','AD_PRES');

 

in关键字的特点:

判断某字段的值是否属于in列表项中的某一项

in列表中的值都是统一类型或者相互兼容(即可以相互转换)

 

is null

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

SELECT last_name,commission_pct

FROM employeess

WHERE commission_pct IS NULL;

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

SELECT last_name,commission_pct

FROM employeess

WHERE commission_pct IS NOT NULL;

 

未经允许不得转载:天府数据港官方信息博客 » MySql数据库Select条件查询

客官点个赞呗! (0)
分享到:

评论 抢沙发

评论前必须登录!

天府云博 - 做有态度的开发&运维&设计学习分享平台!

联系我们百度云主机