データ型 (Transact-SQL)Data types (Transact-SQL)

適用対象: ○SQL Server ○Azure SQL Database ○Azure SQL Data Warehouse ○Parallel Data WarehouseAPPLIES TO: yesSQL Server yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

SQL ServerSQL Server では、列、ローカル変数、式、パラメーターのそれぞれに、関連するデータ型があります。In SQL ServerSQL Server, each column, local variable, expression, and parameter has a related data type. データ型は、整数データ、文字データ、通貨データ、日時データ、バイナリ文字列など、オブジェクトが保持できるデータの種類を示す属性です。A data type is an attribute that specifies the type of data that the object can hold: integer data, character data, monetary data, date and time data, binary strings, and so on.

SQL ServerSQL Server では、システム データ型のセットが用意されており、ここに SQL ServerSQL Server で使用可能なデータ型がすべて定義されています。supplies a set of system data types that define all the types of data that can be used with SQL ServerSQL Server. Transact-SQLTransact-SQL または MicrosoftMicrosoft .NET Framework.NET Framework で、ユーザー独自のデータ型を定義することもできます。You can also define your own data types in Transact-SQLTransact-SQL or the MicrosoftMicrosoft .NET Framework.NET Framework. 別名データ型は、システムが提供するデータ型に基づいています。Alias data types are based on the system-supplied data types. 別名データ型について詳しくは、「CREATE TYPE (Transact-SQL)」をご覧ください。For more information about alias data types, see CREATE TYPE (Transact-SQL). ユーザー定義型の特性は、.NET Framework.NET Framework でサポートされるプログラミング言語の 1 つを使用して作成するクラスのメソッドと演算子によって決まります。User-defined types obtain their characteristics from the methods and operators of a class that you create by using one of the programming languages support by the .NET Framework.NET Framework.

データ型、照合順序、有効桁数、小数点以下桁数、または長さが異なる 2 つの式を演算子で結合する場合、結果の特性は次のように決まります。When two expressions that have different data types, collations, precision, scale, or length are combined by an operator, the characteristics of result are determined by the following:

  • 結果のデータ型は、入力式のデータ型のうち優先順位が高いほうになります。The data type of the result is determined by applying the rules of data type precedence to the data types of the input expressions. 詳細については、「データ型の優先順位 (Transact-SQL)」を参照してください。For more information, see Data Type Precedence (Transact-SQL).
  • 結果の照合順序は、データ型が charvarchartextncharnvarchar、または ntext の場合は、照合順序の優先順位の規則によって決まります。The collation of the result is determined by the rules of collation precedence when the result data type is char, varchar, text, nchar, nvarchar, or ntext. 詳細については、「照合順序の優先順位 (Transact-SQL)」を参照してください。For more information, see Collation Precedence (Transact-SQL).
  • 結果の有効桁数、小数点以下桁数、長さは、入力式の精度、桁数、長さによって決まります。The precision, scale, and length of the result depend on the precision, scale, and length of the input expressions. 詳しくは、「有効桁数、小数点以下桁数、および長さ (Transact-SQL)」をご覧ください。For more information, see Precision, Scale, and Length (Transact-SQL).

SQL ServerSQL Server では、ISO との互換性を保つためにデータ型のシノニムが用意されています。provides data type synonyms for ISO compatibility. 詳しくは、「データ型のシノニム (Transact-SQL)」をご覧ください。For more information, see Data Type Synonyms (Transact-SQL).

データ型のカテゴリData type categories

SQL ServerSQL Server のデータ型は、次のカテゴリに分類されます。Data types in SQL ServerSQL Server are organized into the following categories:

真数Exact numerics Unicode 文字列Unicode character strings
概数Approximate numerics バイナリ文字列Binary strings
日付と時刻Date and time その他のデータ型Other data types
文字列Character strings

SQL ServerSQL Server では一部のデータ型は、格納の特性に基づいて次のグループに分けられます。In SQL ServerSQL Server, based on their storage characteristics, some data types are designated as belonging to the following groups:

  • 大きな値データ型: varchar(max)nvarchar(max)Large value data types: varchar(max), and nvarchar(max)

  • ラージ オブジェクト データ型: textntextimagevarbinary(max)xmlLarge object data types: text, ntext, image, varbinary(max), and xml

    注意

    sp_help は、大きな値および xml を受け取るデータ型の長さとして -1 を返します。sp_help returns -1 as the length for the large-value and xml data types.

真数Exact numerics

bigintbigint numericnumeric
bitbit smallintsmallint
decimaldecimal smallmoneysmallmoney
intint tinyinttinyint
moneymoney

概数Approximate numerics

floatfloat realreal

日付と時刻Date and time

datedate datetimeoffsetdatetimeoffset
datetime2datetime2 smalldatetimesmalldatetime
datetimedatetime timetime

文字列Character strings

charchar varcharvarchar
texttext

Unicode 文字列Unicode character strings

ncharnchar nvarcharnvarchar
ntextntext

バイナリ文字列Binary strings

[バイナリ]binary varbinaryvarbinary
imageimage

その他のデータ型Other data types

カーソル (cursor)cursor rowversionrowversion
hierarchyidhierarchyid uniqueidentifieruniqueidentifier
sql_variantsql_variant xmlxml
空間 geometry 型Spatial Geometry Types 空間 geography 型Spatial Geography Types
テーブルtable

参照See also

CREATE PROCEDURE (Transact-SQL)CREATE PROCEDURE (Transact-SQL)
CREATE TABLE (Transact-SQL)CREATE TABLE (Transact-SQL)
DECLARE @local_variable (Transact-SQL) EXECUTE (Transact-SQL)DECLARE @local_variable (Transact-SQL) EXECUTE (Transact-SQL)
式 (Transact-SQL)Expressions (Transact-SQL)
関数 (Transact-SQL)Functions (Transact-SQL)
LIKE (Transact-SQL)LIKE (Transact-SQL)
sp_droptype (Transact-SQL)sp_droptype (Transact-SQL)
sp_help (Transact-SQL)sp_help (Transact-SQL)
sp_rename (Transact-SQL)sp_rename (Transact-SQL)