basin
basin

Reputation: 4190

Column alias for VALUES ( ) syntax

Here's some SQL:

select T.*
FROM (
values ( '2014-05-30 17:26:32.749' , 'Casual shirt ' ) , ( '2014-05-30 17:26:32.749' , 'Casual shirt-White-Small ' ) , ( '2014-05-30 17:26:32.749' , 'Casual shirt-Blue-Medium ' ) , ( '2014-05-30 17:26:32.749' , 'Cords ' ) , ( '2014-05-30 17:26:32.749' , 'Bodysuit ' ) , ( '2014-05-30 17:26:32.749' , 'Cords-Black-29W x 28L ' ) , ( '2014-05-30 17:26:32.749' , 'Bodysuit-Black-Petit ' ) , ( '2014-05-30 17:26:32.749' , 'Cords-Brown-29W x 28L ' ) , ( '2014-05-30 17:26:32.749' , 'Classic pleated dress pant ' ) , ( '2014-05-30 17:26:32.749' , 'Classic pleated dress pant-Black-29W x 32L ' ) , ( '2014-05-30 17:26:32.749' , 'Dress shirt ' ) , ( '2014-05-30 17:26:32.749' , 'Dress shirt-White-15 ' ) , ( '2014-05-30 17:26:32.749' , 'Dress shirt-White-16 ' )
) T
;

It returns columns "1" and "2". How to change it so it returns named columns? Is it possible without using sysdummy1 ?

Upvotes: 3

Views: 1007

Answers (1)

Gordon Linoff
Gordon Linoff

Reputation: 1269693

You can add the column names to T:

select T.*
FROM (values ( '2014-05-30 17:26:32.749' , 'Casual shirt ' ) ,
             ( '2014-05-30 17:26:32.749' , 'Casual shirt-White-Small ' ) ,
             ( '2014-05-30 17:26:32.749' , 'Casual shirt-Blue-Medium ' ) ,
             ( '2014-05-30 17:26:32.749' , 'Cords ' ) ,
             ( '2014-05-30 17:26:32.749' , 'Bodysuit ' ) ,
             . . .
     ) T(col1, col2);

Upvotes: 8

Related Questions