您的位置:首页 > 数据库

SQL:如何把多行查询结果,作为一行返回

2009-11-23 22:33 501 查看
CREATE FUNCTION dbo.UF_GetInvoiceSerials( @bizCode VARCHAR(10))
RETURNS VARCHAR(100)
AS
BEGIN
DECLARE @ret AS VARCHAR(1000)
SELECT @ret=Coalesce(@ret + ', ','') +
CASE e.ID
WHEN '1' THEN c.InvoiceNo
WHEN '2' THEN d.ExpenseNO
ELSE 'N/A'
END
FROM dbo.Business a WITH(NOLOCK)
LEFT JOIN dbo.Asset_Card b WITH(NOLOCK)
ON b.BusinessID = a.ID
LEFT JOIN dbo.Equipment_Card c WITH(NOLOCK)
ON c.Asset_CardID = b.ID
LEFT JOIN dbo.FurnitureCard d WITH(NOLOCK)
ON d.Asset_CardID = b.ID
LEFT JOIN dbo.Assert_Type e WITH(NOLOCK)
ON e.ID = b.Assert_TypeID
WHERE a.BusinessCode=@bizCode
RETURN Isnull(@ret,'N/A')
END

+++++++++++++++++++++++++++++++++++++++++

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐