如何在mysql中合并2行

如何在mysql中合并2行,sql,mysql,Sql,Mysql,但是如果我选择了,我只希望结果是a2,3uk 如何做到这一点 我正在查看结果:2,3 UK和2,3是F3字段试试这个 T1 F1 F2 F3 F4 a 2 2 NULL a 2 3 UK select F1, F2, F3, F4 FROM T WHERE F4 is not null 试试这个 select F1, F2, F3, F4 FROM T WHERE F4 is not null 你可以使用下面给出的查询- select * from T1 where (F4

但是如果我选择了,我只希望结果是
a2,3uk

如何做到这一点

我正在查看结果:2,3 UK和2,3是F3字段

试试这个

T1

F1 F2 F3 F4
a  2  2  NULL
a  2  3  UK
select F1, F2, F3, F4 FROM T WHERE F4 is not null
试试这个

select F1, F2, F3, F4 FROM T WHERE F4 is not null

你可以使用下面给出的查询-

 select * from T1 where (F4!='' or F4 is not Null)

这就是您所看到的吗?

您可以使用下面给出的查询-

 select * from T1 where (F4!='' or F4 is not Null)

这就是您所看到的吗?

如果您希望按F1和F2分组,并在一个字符串中获得F3的所有值,并用逗号分隔(这似乎是您所要求的),则必须使用


顺便说一句,请确保您阅读了有关组_CONCAT的文档(请参阅上面的链接),因为如果此字段超过最大长度(每个默认值1024个字符),它将被截断!F4的值可能不是您期望的值(因为查询使用的是MySQL的许多讨厌的“特性”之一)。。。如果F4包含两行的UK,则更有意义,那么您可以将F4添加到group by子句。

如果您希望按F1和F2分组,并在一个字符串中获得F3的所有值,并用逗号分隔(这似乎是您要问的),则必须使用


顺便说一句,请确保您阅读了有关组_CONCAT的文档(请参阅上面的链接),因为如果此字段超过最大长度(每个默认值1024个字符),它将被截断!F4的值可能不是您期望的值(因为查询使用的是MySQL的许多讨厌的“特性”之一)。。。如果F4包含两行的UK,则更有意义,那么您可以将F4添加到group by子句。

如果第1行的UK或US不是NULL,会发生什么?如果第1行的UK或US不是NULL,会发生什么?