见字如面,如标题拆分:
示例:
CREATE TABLE `data_table_name` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`username` varchar(50) CHARACTER SET utf8 NOT NULL DEFAULT '' COMMENT '用户姓名',
`age` tinyint(3) NOT NULL DEFAULT '0' COMMENT '年龄',
`is_online` tinyint(1) NOT NULL DEFAULT '1' COMMENT '是否在线 1:在线 2:离线 ',
`create_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='测试数据表';
表数据:
select count(age) from data_table_name group by age;
执行结果1:
select *, count(DISTINCT create_time) from data_table_name group by age;
执行结果2:
select *,
count(DISTINCT case when create_time > 1653903132 then create_time end) as num from data_table_name group by age;
执行结果3:
select *, count(DISTINCT case when create_time > 1653903132 and is_online = 1 then create_time end) as num from data_table_name group by age;
执行结果4:
以上,需求千息万变,万变不离其宗。
我为人人,人人为我,美美与共,天下大同。
页面更新:2024-02-11
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号