文字型 - AWS Clean Rooms

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

文字型

文字データ型には、CHAR (文字) や VARCHAR (可変文字) などがあります。

ストレージと範囲

CHAR および VARCHAR のデータ型は、文字単位でなくバイト単位で定義されます。CHAR 列にはシングルバイト文字のみを含めることができます。したがって、CHAR(10) 列には、最大 10 バイト長の文字列を含めることができます。VARCHAR にはマルチバイト文字 (1 文字あたり最大で 4 バイトまで) を含めることができます。例えば、VARCHAR(12) 列には、シングルバイト文字なら 12 個、2 バイト文字なら 6 個、3 バイト文字なら 4 個、4 バイト文字なら 3 個含めることができます。

名前 ストレージ 範囲(列の幅)
CHAR または CHARACTER 文字列の長さ。末尾の空白を含む (存在する場合)。 4096 バイト
VARCHAR または CHARACTER VARYING 4 バイト + 文字の合計バイト数 (ここで、各文字は 1~4 バイト)。 65535 バイト (64K -1)
トピック

    CHAR または CHARACTER

    固定長の文字列を格納するには、CHAR または CHARACTER を使用します。これらの文字列は空白で埋められるので、CHAR(10) 列は常に 10 バイトのストレージを占有します。

    char(10)

    長さの指定がない場合 CHAR 列は、CHAR(1) 列になります。

    VARCHAR または CHARACTER VARYING

    一定の制限を持つ可変長の文字列を格納するには、VARCHAR 列または CHARACTER VARYING 列を使用します。これらの文字列は空白で埋められないので、VARCHAR(120) 列は、最大で 120 個のシングルバイト文字、60 個の 2 バイト文字、40 個の 3 バイト文字、または 30 個の 4 バイト文字で構成されます。

    varchar(120)

    末尾の空白の重要性

    CHAR と VARCHAR のデータ型は両方とも、最大 n バイト長の文字列を格納できます。それよりも長い文字列をこれらの型の列に格納しようとすると、エラーが発生します。ただし、余分な文字がすべてスペース (空白) であれば、文字列は最大長に切り捨てられます。文字列の長さが最大長よりも短い場合、CHAR 値は空白で埋められますが、VARCHAR 値では空白なしで文字列を格納します。

    CHAR 値の末尾の空白はいつも意味的に重要であるとは限りません。末尾の空白は、LENGTH 計算を含めないで 2 つの CHAR 値を比較するときは無視され、CHAR 値を別の文字列型に変換するときは削除されます。

    VARCHAR および CHAR の値の末尾の空白は、値が比較されるとき、意味的に重要でないものとして扱われます。

    長さの計算によって返される VARCHAR キャラクタ文字列の長さには末尾の空白が含められます。固定長のキャラクタ文字列の長さを計算する場合、末尾の空白はカウントされません。