2

どこかで SQL Server に存在するメソッドを見ましたが、もう一度見つけることができません...

これにより、次の SQL ロジックが簡素化されます。

SELECT 'CategoryA','DescriptionA'
UNION
SELECT 'CategoryB','DescriptionB'
UNION
SELECT 'CategoryC','DescriptionC' 

このようなものに:

SELECT ROWS(('CategoryA','DescriptionA'), 
            ('CategoryB', 'DescriptionB'), 
            ('CategoryC', 'DescriptionC'))

その機能とその構文を誰か教えてもらえますか?

4

1 に答える 1

3

SQL Server 2008 では、テーブル値コンストラクターを使用できます

SELECT *
FROM (VALUES ( 'CategoryA', 'DescriptionA'),
             ( 'CategoryB', 'DescriptionB'),
             ( 'CategoryC', 'DescriptionC')) V(Col1, Col2)

注意: これは、常にそれからできるのUNION ALLではなく、と同じセマンティクスを持っています。UNIONSELECT DISTINCT

于 2013-07-02T13:11:19.007 に答える