SQL 函数 排序 等基础操作 DDL DML DQL 用法和<> <=>等

--根据函数别名排序
--排序规则,默认是升序
sleect LENGTH(NAME) nameLength from user ORDER BY nameLength DESC

--特殊符号
特殊符号<=> 安全等于可以比较null和数值,正常比较null通过is null 和is not null 数值是 = <> !=和<>相同,in(1,2)是1或者2 between 1 and 10 是1~10的所有整数

IFNULL(num,0) num不为null 返回num否则返回0

--两个以上字段排序,不写默认升序 asc
SELECT *  FROM user  ORDER BY age DESC, salary  ASC;
--查询年龄在20-40之间
SELECT * FROM user  WHERE age  BETWEEN 20 AND 40 ORDER BY age DESC
--查询年龄在20-40之间
SELECT * FROM user  WHERE age NOT  BETWEEN 20 AND 40 ORDER BY age DESC
--模糊查询
SELECT * FROM user WHERE name  LIKE "%a%" ORDER BY LENGTH(name) DESC, phone ASC

--函数
--单行函数  concat()字符串拼接、ifnull、length()
--分组函数
--分组函数又称为统计函数、聚合函数、组函数

--拼接字符串
SELECT CONTACT(name,"--",age) FROM user;
--大小写切换
SELECT UPPER(name),LOWER(type);
--截取字符串,下表从1开始,从第2截取到末尾
SELECT SUBSTRING("ABCDEFG",2);
--截取(1,2),从第一位开始,截取两个字符
SELECT SUBSTRING("ABCDEFG",1,2);
--返回子串第一次出现的索引
SELECT INSTR("ABCDEF",‘DE‘)
--去除空格
SELECT TRIM("   DDD   ");
--去除a,只能去除字符串的前后,不能去除中间
SELECT TRIM(‘a‘ FROM "AaaaaBCDEFDALKDFJAaaaaaaaa");
--指定长度的左填充,格式  2222222AAA
SELECT LPAD("AAA",10,"2");
--右填充
SELECT LPAD("AAA",10,"2");
--字符串替换,将A替换为UUU
SELECT REPLACE("111AAA222","A","UUU")
--取整数函数,四舍五入
SELECT ROUND(1.2);
--保留两位小数
SELECT ROUND(1.556,2);
--向上取整,返回大约等于该值的最小整数
SELECT CEIL(1.02);
--向下取整,返回小于等于该值的最大整数
SELECT FLOOR(1.2);
--阶段,保留小数位数
--SELECT TRUNCATE(1.34,1);
--取余是1
SELECT MOD(10,3);

--日期+时间
SELECT NOW();
--日期
SELECT CURDATE();
--时间
SELECT CURTIME();