使用MySQL在另一列中的布尔值连接行

要根据另一列中的布尔值连接行,请使用GROUP_CONCAT()。让我们首先创建一个表。在这里,我们将“ isValidUser ”列之一设置为BOOLEAN-

mysql> create table DemoTable
(
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   UserMessage varchar(100),
   isValidUser boolean
);

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

mysql> insert into DemoTable(UserMessage,isValidUser) values('Hi',true);
mysql> insert into DemoTable(UserMessage,isValidUser) values('Hello',false);
mysql> insert into DemoTable(UserMessage,isValidUser) values('Good',true);
mysql> insert into DemoTable(UserMessage,isValidUser) values('Awesome !!!!!',true);

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

mysql> select *from DemoTable;

这将产生以下输出-

+----+---------------+-------------+
| Id | UserMessage   | isValidUser |
+----+---------------+-------------+
|  1 | Hi            |           1 |
|  2 | Hello         |           0 |
|  3 | Good          |           1 |
|  4 | Awesome !!!!! |           1 |
+----+---------------+-------------+
4 rows in set (0.03 sec)

以下是根据另一列中的布尔值连接行的查询。在这里,我们将布尔值1和布尔值0的对应记录串联起来-

mysql> select isValidUser,group_concat(UserMessage) from DemoTable group by isValidUser;

这将产生以下输出-

+-------------+---------------------------+
| isValidUser | group_concat(UserMessage) |
+-------------+---------------------------+
|           0 | Hello                     |
|           1 | Hi,Good,Awesome !!!!!     |
+-------------+---------------------------+
2 rows in set (0.07 sec)
猜你喜欢