我想在mysql查询中获取First_Name,LastName,First Name Last Name的所有记录。
例如,
mytable看起来像这样:
rec Id First Name Last Name
1 Gnaniyar Zubair
2 Frankyn Albert
3 John Mathew
4 Suhail Ahmed
输出应该是这样的:
Gnaniyar Zubair, Frankyn Albert, John Mathew, Suhail Ahmed
给我SQL。
答案 0 :(得分:6)
如果必须在查询中完成此操作,您可以使用GROUP_CONCAT
,但除非您按某种方式进行分组,否则这是一个非常愚蠢的查询,并且连接应该在客户端上完成。
SELECT GROUP_CONCAT(FirstName + ' ' + LastName
ORDER BY FirstName, LastName
SEPARATOR ', ') AS Names
FROM People;
答案 1 :(得分:0)
这不是一行包含所有记录,而是数据表示的问题。因此,我建议采用一个简单的SELECT查询,获取所需的记录,然后根据需要将它们排列在视图层中。
另一方面,为什么需要在SQL级别而不是在视图级别上解决此记录串联?
答案 2 :(得分:0)
如果您想将它们放在一行中,那么您可能没有正确使用数据库。
如果您只想将名字和姓氏连在一起,那很简单:
SELECT CONCAT(`First Name`, ' ', `Last Name`) FROM mytable