|
Posted by Erland Sommarskog on 08/03/06 21:29
Bryan (bryanmcguire@btinternet.com) writes:
> Here is an example that may meet your needs. It's a bit rough but it
> does work.
>
>
> USE Northwind
> GO
> CREATE FUNCTION dbo.ConcatOrderProducts(@OrderID int)
> RETURNS VARCHAR(8000)
> AS
> BEGIN
> DECLARE @Output VARCHAR(8000)
> SELECT @Output = COALESCE(@Output+', ', '') + CONVERT(varchar(20),
> P.ProductName)
> FROM dbo.[Order Details] OD
> JOIN dbo.Products P
> ON P.ProductID = OD.ProductID
> WHERE OD.OrderID = @OrderID
> ORDER BY P.ProductName
Nah, it seems to work, but there is not really any guarantee. It relies
on undefined behaviour, and you may get the result you expect.
--
Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se
Books Online for SQL Server 2005 at
http://www.microsoft.com/technet/prodtechnol/sql/2005/downloads/books.mspx
Books Online for SQL Server 2000 at
http://www.microsoft.com/sql/prodinfo/previousversions/books.mspx
Navigation:
[Reply to this message]
|