Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Order Details
- 2315 1x5432 Apple Tree, 9x912 Roses, 1x13 Spade
- 2316 3x12 Lawn grass
- SELECT DISTINCT
- Col1.Table_Name TableName,
- STUFF
- (
- (
- SELECT
- ', ' + CONVERT (VARCHAR, Col2.Column_name)
- FROM Information_Schema.Columns Col2
- WHERE Col1.Table_Name = Col2.Table_Name
- ORDER BY Col2.Table_Name
- FOR XML PATH('')
- ), 1, 2, ''
- ) AS ColumnNames
- FROM Information_Schema.Columns Col1
- CREATE FUNCTION GetDetails (@order_id INT) RETURNS NVARCHAR(1000) AS
- BEGIN
- DECLARE mycursor
- CURSOR READ_ONLY
- FOR SELECT description
- FROM OrderDetails
- WHERE order_id = @order_id
- DECLARE @description NVARCHAR(100)
- DECLARE @return_value NVARCHAR(1000)
- SET @return_value = ''
- OPEN mycursor
- FETCH NEXT FROM mycursor INTO @description
- WHILE @@fetch_status = 0
- BEGIN
- SET @return_value = @return_value + @description
- FETCH NEXT FROM mycursor INTO @description
- IF (@@fetch_status = 0) SET @return_value = @return_value + ', '
- END
- CLOSE mycursor
- DEALLOCATE mycursor
- RETURN @return_value
- END;
- SELECT order_id, GetDetails(order_id) as details
- FROM Order
- CREATE FUNCTION GetDetails(@OrderID varchar(10))
- RETURNS varchar(1000) AS
- BEGIN
- DECLARE @result varchar(1000), @delimiter char
- SET @delimiter = ','
- SELECT @result = COALESCE(@result + @delimiter, '') + Details
- FROM
- (
- SELECT ProductNumber
- , Quantity + 'x' + ProductNumber + ' ' + ProductName AS Details
- FROM OrderDetail where OrderID = @OrderID
- ) OrderDetail
- ORDER BY ProductNumber
- RETURN @result
- END
- SELECT OrderId, GetDetails(OrderId) AS Details
- FROM Order
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement