1.3.2 比較,代入できるデータ型

<この項の構成>
(1) 比較
(2) 格納代入
(3) 検索代入

(1) 比較

WHERE句に指定した探索条件中で比較できるデータ型の組み合わせを次の表に示します。WHERE句については,「2.5 WHERE句」を参照してください。

ここでの比較は,ユニークインデクスの重複キーチェック,およびORDER BY句にも適用されます。

表1-11 比較できるデータ型の組み合わせ

項番データ型数データ文字データ時刻印データ行IDデータ
1数データ×××
2文字データ×××
3時刻印データ×××
4行IDデータ×××
(凡例)
○:比較できます。
×:比較できません。
(a) 数データの比較

比較するデータのデータ型が異なる場合は,範囲の広い方のデータ型で比較されます。範囲の広さの順を次に示します。

DECIMAL>INTEGER>SMALLINT

(b) 文字データの比較
(c) 時刻印データの比較

小数秒のけた数が異なる場合は,精度の高い方にそろえて,拡張した小数秒部分に0を補って比較されます。

(d) 行IDデータの比較

行IDデータは,WHERE句中の比較述語(=)にだけ指定できます。

(2) 格納代入

INSERTの挿入値またはUPDATEの更新値として,指定できるデータ型の組み合わせを次の表に示します。ただし,埋め込み変数,および標識変数を使用して格納代入を行う場合には,代入先と代入元のデータ型をそろえてください。埋め込み変数,および標識変数については,「1.6 変数(埋め込み変数および標識変数)」を参照してください。

表1-12 格納代入できるデータ型の組み合わせ

項番代入元のデータ型代入先のデータ型
数データ文字データ時刻印データ行IDデータ
1数データ×××
2文字データ×××
3時刻印データ×××
4行IDデータ××××
(凡例)
○:格納代入できます。
×:格納代入できません。
(a) 数データの格納代入
(b) 文字データの格納代入
(c) 時刻印データの格納代入
(d) 行IDデータの格納代入

INSERTの挿入値またはUPDATEの更新値として,行IDデータは使用できません。

(3) 検索代入

検索結果を受け取る場合,代入先と代入元のデータ型をそろえてください。