insert
字段设置自增后,当我们指定增加一条数据后,往后增加的数据都会在该条数据后进行递增,但是可以认为的指定增加某条id不存在的数据
insert into c values(7,‘政治’)
insert into c(c2) values(‘历史1’),(‘地理1’);
update 修改必须带条件
update c set c2=‘hello’ for update;(全表修改)
delete:逻辑删除,要携带条件
truncate:不允许携带条件,全表删除,删除后索引等还原为最初状态
drop:删整个表
删除能力:drop>truncate>delete
函数
日期函数:
获取当前日期
select NOW() from dual;
获取年月日
select YEAR(NOW()),MONTH(NOW()),DAY(NOW())from dual;
查询给学生的年龄,只按年份算
select *,year(NOW())-year(sage) from t_student
按出生日期算,当前月日《出生年月的月日则,年龄减一
select *,year(NOW())-year(sage)+if(convert(date_format(now(),‘%m%d’), unsigned)<convert(date_format(sage,‘%m%d’), unsigned),-1,0) as '年龄’from t_student
查询本月过生日的学生
select * from t_student where month(now())=month(sage);
查询下月过生日的学生
select * from t_student where month(adddate(now(),interval 1 month))=month(sage);
字符串
获取长度
select length(‘i love this game’)from dual;
拼接
select concat(‘zhangsan’ ‘like’ ‘you’)from dual;
大小写转换
select upper(‘i love’),lower(‘L LIKE’)FROM dual;
替换
select replace(‘i love this games’,‘i’,‘a’)from dual;
去除前后空格
select length(trim(’ i love ')),lenght(trim('i love '))from dual;
反转
select reverse(‘I love this game’) from dual;
数字函数
select floor(3.14),floor(-3.14),ceil(3.14),ceil(-3.14),round(-3.14),round(3.14)from dual;
if条件
if(表达式,满足的结果,不满足的结果)
select iif(1>0,‘这个世界真疯狂’,‘有规律’)from dual;
ifnull
select t_student set ssex=null where sid=‘02’;
select sname,ifnull(ssex,‘bnbun’)from t_student;
case when
select *,year(now())-year(sage)+(
case when convert(date_format(now(),‘%m%d’),UNSIGNED
)<convert(date_format(sage,‘%m%d’),UNSIGNED)then -1
else 0 end)
from t_student;
聚合函数(一般与group by 或having搭配使用)
select count(sid),max(sage),min(sage)from dual;
union和union all
select ‘12’,12 from dual
union
select ‘12’,12 from dual
union
select ‘12’,13 from dual