在 MySQL 分组连接中获取最后一个值?


要获取 group concat 中的最后一个值,请使用 SUBSTRING_INDEX()。让我们首先创建一个表 -

mysql> create table DemoTable1525
   -> (
   -> ListOfSubjects text
   -> );
Query OK, 0 rows affected (1.13 sec)

使用插入命令在表中插入一些记录 -

mysql> insert into DemoTable1525 values('MongoDB,C');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable1525 values('Java,C++,MySQL');
Query OK, 1 row affected (0.25 sec)
mysql> insert into DemoTable1525 values('Python,C++,C,Java');
Query OK, 1 row affected (0.14 sec)

使用 select 语句显示表中的所有记录 -

mysql> select * from DemoTable1525;

这将产生以下输出 -

+-------------------+
| ListOfSubjects    |
+-------------------+
| MongoDB,C         |
| Java,C++,MySQL    |
| Python,C++,C,Java |
+-------------------+
3 rows in set (0.00 sec)

以下是获取 group_concat() 中最后一个值查询 -

mysql> select substring_index(ListOfSubjects,',',-1) as LastValue from DemoTable1525;

这将产生以下输出 -

+-----------+
| LastValue |
+-----------+
| C         |
| MySQL     |
| Java      |
+-----------+
3 rows in set (0.00 sec)

更新于: 11-Dec-2019

580 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始吧
广告
© . All rights reserved.