Microsoft Fabric のデータ型
適用対象:✅ Microsoft Fabric の SQL エンドポイントおよびウェアハウス
Microsoft Fabric におけるテーブルでは、最もよく使用される T-SQL データ型がサポートされています。
- テーブル作成について詳しくは、テーブルに関するページをご覧ください。
- Warehouse でサポートされているデータ型は、Fabric SQL Database でサポートされているデータ型とは異なります。
- 構文については、「CREATE TABLE」を参照してください
ウェアハウスでのデータ型
ウェアハウスでは、T-SQL データ型のサブセットがサポートされています。 提供される各データ型は、同じ名前の SQL Server データ型に基づいています。 詳細については、次の表の各リファレンス記事を参照してください。
カテゴリ | サポートされているデータ型 |
---|---|
厳密な数値 | |
概数 | |
日付と時刻 | |
固定長の文字列 | |
可変長の文字列 |
|
バイナリ文字列 |
* datetime2 と time の精度に関しては、秒の小数部が 6 桁までとなります。
** uniqueidentifier データ型は、Delta Parquet において一致するデータ型がない T-SQL データ型です。 そのため、それはバイナリ型として格納されます。 ウェアハウスでは uniqueidentifier 列の格納と読み取りがサポートされていますが、SQL 分析エンドポイントではこれらの値を読み取れません。 レイクハウスで uniqueidentifier 値を読み取ると、元の値のバイナリ表現が表示されます。 その結果、uniqueidentifier 列を使用したウェアハウスと SQL 分析エンドポイントの間のクロス結合などの機能は期待通りには機能しません。
*** varchar (max) と varbinary (max) のサポートは現在プレビュー段階です。
サポートされているデータ型の詳細 (その精度など) については、CREATE TABLE のリファレンスで「データ型」をご覧ください。
サポートされていないデータ型
現在サポートされていない T-SQL データ型については、代替手段を使用できます。 これらの型を使用する場合は、精度やクエリ動作が異なる可能性があるため、必ず評価してください。
サポートされていないデータ型 | 使用できる代替手段 |
---|---|
money と smallmoney | decimal を使用します。ただし、それには通貨単位を格納できないことに注意してください。 |
datetime 型と smalldatetime 型 | datetime2 を使用します。 |
datetimeoffset | CAST 関数と AT TIME ZONE (Transact-SQL) の関数を使用してデータを変換する場合、datetime2 を使用しますが、必要に応じて datetimeoffset を使用することもできます。 例については、 datetimeoffset を参照してください。 |
nchar と nvarchar | Parquet には同様の unicode データ型がないため、それぞれ char と varchar を使用します。 UTF-8 照合順序を使用した char 型とvarchar型では、Unicode データの格納に ncharや nvarchar よりも多くの記憶域が使用される場合があります。 ご使用の環境での影響を確認するには、「UTF-8 と UTF-16 でのストレージの相違点」をご覧ください。 |
text と ntext | varchar を使用します。 |
image | varbinary を使用します。 |
tinyint | smallint を使用します。 |
geography | 同等の対象なし。 |
サポートされていないデータ型を T-SQL コードにおいて変数に使用することも、セッションにおいてメモリ内で使用することもできます。 ディスク上のデータを保持するテーブルやビューをこれらの型を使用して作成することは許可されていません。
ウェアハウスにおいてテーブルを作成するためのガイドは、テーブルの作成に関するページをご覧ください。
SQL 分析エンドポイントで自動生成されたデータ型
SQL 分析エンドポイントでのテーブルは、関連するレイクハウスにおいてテーブルが作成されるたびに自動的に作成されます。 SQL 分析エンドポイントのテーブル内の列の型は、ソースの Delta 型から導出されます。
SQL 分析エンドポイントで元の Delta 型が SQL 型にマッピングされる際の規則を次の表に示します:
Delta データ型 | SQL データ型マップ (マッピング済) |
---|---|
LONG、BIGINT | bigint |
BOOLEAN、BOOL | bit |
INT、INTEGER | int |
TINYINT、BYTE、SMALLINT、SHORT | smallint |
DOUBLE | float |
FLOAT、REAL | real |
DATE | date |
TIMESTAMP | datetime2 |
CHAR(n) | varchar(n) (Latin1_General_100_BIN2_UTF8 照合順序を使用) |
STRING、VARCHAR(n) | varchar(n) (Latin1_General_100_BIN2_UTF8 照合順序を使用) |
STRING、VARCHAR(MAX) | Latin1_General_100_BIN2_UTF8 照合順序を使用する varchar(MAX) |
BINARY | varbinary(n) |
DECIMAL、DEC、NUMERIC | decimal(p,s) |
この表で示されていない型の列は、SQL 分析エンドポイントにおいてテーブル列として表されません。