MySQL可以在1个字符串中返回多个单元格?
在sqlserver中,我可以使像这样的功能
CREATE FUNCTION [dbo].[getTribunByOrder]
(
@idtrorder varchar(10)
)
RETURNS varchar(1000)
AS
BEGIN
declare @trtribun varchar(1000)
set @trtribun = ''
select @trtribun = @trtribun + nametribun +'='+ convert(varchar(3),jumlah) + ','
from trtribun b
where idtrorder = @idtrorder
set @trtribun = substring(@trtribun, 0, len(@trtribun))
RETURN @trtribun
END
该函数的返回结果=“ name1 = 1,name2 = 3,name3 = 2”
mysql可以创建这样的功能吗?
最佳答案
当然可以:
例如,使用CONCAT
可以在一行中返回多列:
SELECT CONCAT(column1,column2,...) FROM ...
并使用
GROUP_CONCAT
可以在一行中返回多行SELECT GROUP_CONCAT(column1) FROM... WHERE... GROUP BY column1
在这里http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_concat和这里http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat