JavaWeb学习之路-05:MySQL阶段1总结

MySQL阶段总结

MySQL安装

MySQL建立数据库

MySQL约束

主键,唯一键,非空外键

MySQL建表

列名,数据类型,约束,备注

MySQL查询

简单查询

条件查询 where

模糊查询 like

排序查询 order by

分组查询 group by

分页查询 limit (索引,长度)

空值查询 ifnull(column,0),is null,is not null

MySQL删除

delete from table_name where …

MySQL修改

update table_name set column = new_value where …

MySQL函数

数值函数

ceil(5.5) 向上取整 6

floor(5.5) 向下取整 = 5

round(9.5454,2) 四舍五入 = 9.55

truncate(9.5454,2) 截断 = 9.54

mod(5,2) 取余 = 1
format(1999,2) 格式化 = 1,999.00

字符串函数

concat(‘hello’,‘world’) 连接字符串 = 'hello world’

char_length(‘你好’) 字符个数 = 2

length(‘你好’) 字节长度 = 6

lower() | lcase() 转换字符串为小写

upper() | ucase() 转换字符串为大写

lpad(‘he’,2,‘z’) | rpad()左填充|右填充= zzhe

trim() | ltrim() | rtrim()去空格 | 去左边空格 | 去右边空格

repeat() 重复生成字符串

substring() | substr() 截取字符串

replace(‘hello’,‘l’,‘p’) 替换字符串 = heppo

日期函数

curdate() 获取当前日期

curtime() 获取当前时间(只有时分秒)

now() curdate() & curtime()

timediff(a,b) 返回a,b两个时间的时间差(a,b的时分秒要写全)

datediff(a,b) 返回两个日期的差值

date_add(now(),interval 3 year) 在当前之间加上三年

date_sub() 同上,减去…

extract(time from now() 从now()中提取time(),now()和time()可以换成其他属性

date_format(date,format) 格式化日期时间%H:24小时 / %h:12小时;%Y:四位数年份 / %y:二位数年份

time_format(time,format) 格式化时间

timestampdiff(unit,a,b) 求时间间隔unit=year|month|day|hour等

函数练习

本段所用数据库的gitee下载链接SQL文件下载,Git使用教程参考本专栏第一篇文章

-- 查名字前三位
SELECT SUBSTRING(ename,1,3),LEFT(ename,3),ename
FROM emp;
-- 查名字正好是五位
SELECT ename
FROM emp
WHERE CHAR_LENGTH(ename) = 5;
-- 查首字母大写其他字母小写,名字长度
SELECT CONCAT(UPPER(LEFT(ename,1)),LOWER(SUBSTR(ename FROM 2))) as ename,CHAR_LENGTH(ename)
from emp
-- 查员工名字中含有大A和小a字母的
SELECT ename 
FROM emp
WHERE
ename like '%A%' OR ename like '%a%';
-- 查部门编号10/20,入职如期晚于81年5月1日,姓名中含有大写A的员工姓名及姓名长度
SELECT ename,CHAR_LENGTH(ename)
FROM emp
WHERE BINARY deptno IN (10,20) and hiredate > '1981-5-1' AND ename like '%A';
-- 员工姓名,用a替换A
SELECT ename,REPLACE(ename,'A','a')
FROM emp;
-- 生成一个身份码,不足用*补齐,分别是10位员工编号,10位姓名,10位工资
SELECT CONCAT(RPAD(empno,10,'*'),RPAD(ename,10,'*'),LPAD(sal,10,'*')) as IdCode
FROM emp

未完待续…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值