GROUP BY并在MySQL中仅显示非空列值
让我们首先创建一个表-
mysql> create table DemoTable -> ( -> Id varchar(100), -> Message varchar(200) -> );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable values('1','');
mysql> insert into DemoTable values('1','Hi');
mysql> insert into DemoTable values('2','Hello');
mysql> insert into DemoTable values('3','Awesome');
mysql> insert into DemoTable values('3','Good Morning');
mysql> insert into DemoTable values('2',NULL);使用select语句显示表中的所有记录-
mysql> select *from DemoTable;
输出结果
+------+--------------+ | Id | Message | +------+--------------+ | 1 | | | 1 | Hi | | 2 | Hello | | 3 | Awesome | | 3 | Good Morning | | 2 | NULL | +------+--------------+ 6 rows in set (0.00 sec)
以下是用于分组并选择第一个非空列的查询-
mysql> select Id,min(Message) from DemoTable -> where Message IS NOT NULL and length(Message) > 0 -> group by Id;
输出结果
+------+--------------+ | Id | min(Message) | +------+--------------+ | 1 | Hi | | 2 | Hello | | 3 | Awesome | +------+--------------+ 3 rows in set (0.06 sec)
热门推荐
10 财运虎年祝福语简短语
11 单亲爸爸春节祝福语简短
12 狗狗上厕所训练
13 植物种植祝福语简短
14 翻译考试祝福语朋友简短
15 个人周年庆简短祝福语
16 狗狗怎么训练
17 分别祝福语简短搞笑英文
18 生日广州男生祝福语简短