mysql查询汇总

1、去重:select DISTINCT  "字段" from表名    ----  关键字(DISTINCT)

2、字段链接:select CONCAT(字段,字段,字段) as "别名" from 表名  ----方法CONCAT(Str,str,str)

3、表结构:desc 表名    ---- 关键字desc

4、判断是否为空:select IFNULL("字段",0) as 别名 FROM 表名 ----方法 IFBULL ,0替代null

5、排除:Select * from 表名 where  NOT(字段>1 and 字段 <6)  ---- 方法 not()

6、模糊查询:Select * from 表名 where  字段 LIKE '%e%'  ---- %%前后任意多个字符

                Select * from 表名 where  字段 LIKE '_t_%' ESCAPE '@'  ----  一个下划线代表一个字符

                                                                                                                ---- ESCAPE 关键字指定 转义字符为@

7、BETWEEN  AND :  Select * from 表名 where  字段 BETWEEN 15 and 20  ---- 在····之间  包括15和20(包含临界值)

8、判断某字段的值是否属于in列表中的某一项 : Select * from 表名  where  字段 in('Str','Str')  ---- IN 等同 or 的结果

9、字母转大写:SELECT UPPER('abc’)    ----  方法 UPPER()

10、字母转小写:SELECT LOWER('ABC')  ----  方法 LOWER()

11、截取:SELECT  SUBSTR(字段 ,1 , 3) FROM 表名 WHERE id=1  ----  方法 SUBSTR() ,索引从1开始,不是从0

12、返回第一次出现的索引,找不到返回0:SELECT INSTR(字段,9) FROM 表名 where id = 448

13、清除左右空格:SELECT LENGTH(TRIM('    123    ')) ,如要其他则 SELECT TRIM('a' from 'aaaaaa123aaaaa')

14、用指定的字符实现左填充,10 为指定长度:select LPAD(字段,10,'*') from 表名 where id =448

15、指定替换 replace:SELECT replace(字段,5,’a’) from 表名 where id =448

16、四舍五入 round:select ROUND(1.689,2) ---- 结果 为1.69,括号中的2为保留2位小数

17、向上取整 ceil :SELECT CEIL(1.0002)  ----结果为2,返回>=该参数的最小整数

18、向下取整FLOOR:SELECT FLOOR(9.00009)  ----结果为9,返回<=该参数的最大整数

19、截断TRUNCATE:SELECT TRUNCATE(9.999999,1)  ----结果为9.9 , 括号中的1表示只保留一位小数

20、取余mod : SELECT mod(10,3)  -----   取余的公式:a-a/b*b

21、两个时间的差数:select DATEDIFF('2020-10-10','2020-09-10')----结果为30,用第一个时间参数减去第二个时间参数

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容