mysql 零碎笔记

聚合函数的用法:

concat 连接单行记录的不同字段, group_concat 连接多行记录的相同字段

count 按条件统计:

SELECT COUNT(*) AS `num` GROUP BY `age` > 24  —— 可能需要建立临时表排序(没有对分组条件建立索引话),效率低

COUNT( CASE WHEN `age` >24 THEN 1 ELSE NULL END )

COUNT(if(pay_status=1, true, NULL))

SELECT COUNT(id>4 or null), COUNT(id=1 OR NULL) from test

group by 分组统计:

SELECT name, address, MAX(age) FROM t GROUP BY name 

这段 sql 可能成功,也可能报错。当 name 字段为主键或 unique not null 键,那么它会决定确定该行,因此 address 字段也被确定(依赖于分组字段)。否则的话,address 的值是randomness的,因此会拒绝此次查询。

猜你喜欢

转载自www.cnblogs.com/lemos/p/10134577.html