読者です 読者をやめる 読者になる 読者になる

SQL Server2014 CTP1 で Columnstore Index に 指定できないはずのデータ型が指定出来てしまう

2013/10/21 追記:ドキュメントが更新されて、uniqueidentifier は Columnstore Index に使用出来ると記載されました。


SQL Server 2014 では、Columnstore Index(列ストアインデックス) に使用できるデータ型が増えています。
CREATE COLUMNSTORE INDEX (Transact-SQL)
この中で指定出来ないデータ型として、

  • ntext , text, and image
  • varchar(max) and nvarchar(max)
  • uniqueidentifier
  • rowversion (and timestamp)
  • sql_variant
  • CLR types (hierarchyid and spatial types)
  • xml

が挙げられています。

しかし、uniqueidentifier は、Columnstore Index に指定出来てしまいました!

CREATE TABLE [dbo].[Table_1](
	[Col1] [uniqueidentifier] NULL,
	[Col2] [hierarchyid] NULL,
	[Col3] [geography] NULL,
	[Col4] [geometry] NULL,
	[Col5] [nvarchar](max) NULL,
	[Col6] [xml] NULL
)
CREATE NONCLUSTERED COLUMNSTORE INDEX [NonClusteredColumnStoreIndex-20130805-211231] ON [dbo].[Table_1]
(
	Col1
)WITH (DROP_EXISTING = OFF)

ドキュメントと実際の動きとどっちが正しいんでしょうね?