一些MySql不常见的函数(持续更新)
批量替换
UPDATE 表名 SET 字段 = REPLACE(字段, '待更新的内容','替换值');
显示正在处理的连接
show processlist
计算时间差
TIMESTAMPDIFF(HOUR,'2020-12-13 20:10:22','2020-12-14 20:10:22') == 24
最新与最旧:
SELECT MAX(modify_time) AS 最新,MIN(modify_time) AS 最旧 FROM xxxxx
最后一个主键:
LAST_INSERT_ID()可以获取上个自增的主键。
BIT_COUNT(),BIT_OR(),BIT_AND():
BIT_COUNT()可以计算二进制1的数量:BIT_COUNT(3)就等于2;BIT_OR(3)就等于3,这个函数会被循环应用,初始与结果首行保持一致;BIT_AND(3)就等于3,这个函数会被循环应用,初始与结果首行保持一致; 在MySQL参考文档中有个巧妙的应用:SELECT year,month,BIT_COUNT(BIT_OR(1<<day)) AS days FROM t1 GROUP BY year,month;这个语句可去重对同一个月的不同day进行计数。