其他函数:
version
database
user
控制函数:
if
case
其他函数
SELECT VERSION() ;
SELECT DATABASE () ;
SELECT USER() ;
流程控制函数
1.if函数: if else的效果
SELECT IF(10<5, '大', '小') ;
2. case函数的使用一:switch case 的效果
java中
switch (变量或表达式) {
case常量1:
语句1;
break;
DEFAULT:
语句n;
break;
}
mysql中
CASE 要判断的字段或表达式
WHEN 常量1 THEN 要显示的值1或语句1;
WHEN 常量2 THEN 要显示的值2或语句2;
...
ELSE 要显示的值n或语句n;
END
#案例:查询员工工资
部门号=30,显示工资为1.1倍
部门号=40,显示工资为1.2倍
部门号=50,显示工资为1.3倍
其他部门为原工资
SELECT salary 原始工资,department_id,
CASE department_id
WHEN 30 THEN salary*1.1
WHEN 40 THEN salary*1.2
WHEN 50 THEN salary*1.3
ELSE salary
END AS 新工资
FROM employees;
3.case函数的使用二: 类似于多重if
CASE
when条件1 THEN 要显示的值1或语句1
when条件2 THEN 要显示的值2或语句2
else要显示的值n或语句n
END
#案例:查询员工的工资情况
如果工资大于20000,显示A级别
如果工资大于15000,显示B级别
如果工资大于10000,显示C级别
否则显示D级别
SELECT last_name 姓名,salary 工资,
CASE
WHEN salary >=20000 THEN 'A'
WHEN salary >=15000 THEN 'B'
WHEN salary >=10000 THEN 'C'
ELSE 'D'
END AS 工资等级
FROM employees
ORDER BY 工资等级 ASC,工资 DESC;