2

このクエリの出力が異なる理由

SELECT DATALENGTH(CAST('test' AS VARCHAR)), DATALENGTH(CAST('test' AS CHAR))

出力:

4,30

4

2 に答える 2

5

VarCharは、渡される文字列の長さに常に調整されます。したがって、出力は4です。

CHARのデフォルトの長さは30であるため、出力は30です。

于 2010-10-05T09:49:50.350 に答える
1

「CASTおよびCONVERT関数を使用するときにnが指定されていない場合、デフォルトの長さは30です」。ただし、DataLengthがvarcharフィールドに適用されると、末尾のスペースは無視されますが、charフィールドの場合、長さはフィールド自体のサイズになります。

于 2010-10-05T09:52:22.203 に答える