mysql数据库学习笔记

jatsh 2015-07-22 08:09:29
1.timestampdiff()函数的使用
例子:1. 计算2000年1月1日到现在有多少月
select timestampdiff(MONTH,'20000101', now()),0)FROM DUAL;
同理多少周多少天也可以计算,将MONTH 换成WEEK ,DAY

2.SUBSTR()函数的使用
例:
查询员工last_name的第三个字母是a的员工的信息
SELECT * FROM employees2 WHERE SUBSTR(last_name,3,1) = 'a';

3 . trim()函数的使用
将字符串‘hello’、‘ Hello ’、‘bllb’、‘ hello ’分别处理得到下列字符串ello、Hello、ll、hello。

SELECT TRIM('h' FROM 'hello') FROM DUAL;
SELECT TRIM(' Hello ') FROM DUAL;
SELECT TRIM(BOTH 'b' FROM 'bllb') FROM DUAL;
SELECT TRIM(BOTH ' ' FROM ' hello ') FROM DUAL

4. IFNULL()
查询员工的last_name及其经理(manager_id),要求对于没有经理的显示“No Manager”字符串。
SELECT last_name,IFNULL(manager_id,'No Mananger') from employees2 ;

5,从DATE类型的数据中获得年份,月份,日
MONTH(date)、YEAR(date)、DAY(date)

6.case ...when

在employees表中查询出员工的工资,并计算应交税款:如果工资小于1000,税率为0,如果工资大于等于1000并小于2000,税率为10%,如果工资大于等于2000并小于3000,税率为15%,如果工资大于等于3000,税率为20%。
SELECT last_name,salary,
(CASE ROUND(salary/1000,0)
WHEN 0 THEN salary*0
WHEN 1 THEN salary*0.1
WHEN 2 THEN salary*0.15
ELSE salary*0.2
END) tax
FROM employees2;


...全文
112 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_30042383 2015-07-23
  • 打赏
  • 举报
回复
已经Mark
jatsh 2015-07-23
  • 打赏
  • 举报
回复
引用 3 楼 u012346799 的回复:
楼主你太伟大了!!!!!!!!
最后一题有个小错误,看5楼
jatsh 2015-07-23
  • 打赏
  • 举报
回复
最后一个一题写错了,不应该用ROUND()四舍五入,应该用FLOOR()向下取整函数 SELECT last_name,salary, (CASE FLOOR (salary/1000) WHEN 0 THEN salary*0 WHEN 1 THEN salary*0.1 WHEN 2 THEN salary*0.15 ELSE salary*0.2 END) tax FROM employees2;
  • 打赏
  • 举报
回复
楼主你这个头像太帅了,我不开心
  • 打赏
  • 举报
回复
楼主你太伟大了!!!!!!!!
hao007cn 2015-07-22
  • 打赏
  • 举报
回复
mark下来

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧