MySQL 条件查询以及模糊查询的例子

用的数据库和表的 已经打包成sql文件

下载地址:
链接: https://pan.baidu.com/s/1G364wNlh_g95DuMd5eNz9w 提取码: r43m

用的关键字 有 ifnull in or and <> <=> is null 等等 适合新手学习

/*

条件查询  

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


分类 : 
	一。按照条件表达式筛选
	简单条件运算符  < > != =
	二。 按照逻辑表达式
	逻辑表达式: && || ! and or not 
	
	&& 相等于 and
	
	
	三。模糊查询  
		like
		between and
		in
		is null
		
	
*/


# 按条件表达式筛选  


# 查询 员工工资 大于 12000 的员工信息

SELECT * FROM employees WHERE salary>12000;


#查询部门编号 不等于 90号的 员工名 和 有 部门编号   <>不等于
SELECT
  last_name,
  department_id
FROM
  employees
WHERE department_id <> 90;


# 工资在 一万 到两万之间的 员工名  和 工资和 奖金 

SELECT  last_name , salary,commission_pct  FROM employees WHERE  salary BETWEEN 10000 AND 20000;

#模糊查询 


/*

like  

between and

is null

is not null 

in


*/

#  查询 员工名字中包含 字符a 的员工信息 % 是通配符 代表任意字符  它包含零个字符   -任意单个字符  就一个 


SELECT *  FROM employees
WHERE last_name LIKE '%a%' ;

# 查询 员工名中 第三个字符 为e  第五个字符 为a 员工的名字和工资 

SELECT last_name, salary FROM employees WHERE '__e__a';

#查询 员工名中 第二个字符为_ 的姓名和工资 


SELECT last_name, salary FROM employees WHERE  last_name LIKE '_\_%';

# between and  在什么什么 之间 可以提高语句的简介度  包含临界值 顺序不能颠倒



#案例1 查询员工编号 100到 120的员工信息   区间条件查询 


 SELECT * FROM employees WHERE employee_id BETWEEN 100 AND 200;


# in  案例:查询 工种编号 是 ---- AD 用于判断某字段的值是 IN  列表中的某一项 简洁度 IN 列表的值 一定要兼容 IN 是   =



SELECT  last_name ,job_id FROM employees WHERE job_id IN ('AD_VP');


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


SELECT last_name,commission_pct FROM employees WHERE commission_pct IS NULL;


# is null 查询有奖金 的员工名和 奖金率 


SELECT last_name,commission_pct FROM employees WHERE commission_pct IS NOT NULL;


# 安全等于   <=> 可以判断null 值 也可以判断数值 


SELECT  last_name,commission_pct FROM employees WHERE commission_pct <=>NULL;


SELECT
  last_name,
  salary
FROM
  employees
WHERE salary <=> 12000;


# 查询 员工号为 176 的员工姓名 年薪   ifnull 判断是否为空
 SELECT
  last_name,
  salary * 12+ (1+ IFNULL (commission_pct, 0)) AS 年薪
FROM
  employees;


猜你喜欢

转载自blog.csdn.net/weixin_46999174/article/details/108776735