sql >> データベース >  >> RDS >> Sqlserver

SQLServerの末尾のスペースを含まないLEN関数

    これは、MicrosoftのMSDN(http://msdn.microsoft.com/en-us/library/ms190329(SQL.90).aspx)で明確に文書化されており、LENは「指定された文字列式の文字数を返します。末尾の空白」。ただし、警戒していなければ、見逃しがちな詳細です。

    代わりに、DATALENGTH関数を使用する必要があります-http://msdn.microsoft.com/en-us/library/ms173486(SQL.90).aspxを参照してください-「式を表すために使用されるバイト数を返します」。

    例:

    SELECT 
        ID, 
        TestField, 
        LEN(TestField) As LenOfTestField,           -- Does not include trailing spaces
        DATALENGTH(TestField) As DataLengthOfTestField      -- Shows the true length of data, including trailing spaces.
    FROM 
        TestTable
    


    1. MySQLでデータベースのすべての権限を付与する方法

    2. Oracle10gSQLピボット

    3. SQLServerMDFファイル回復のための迅速で最良のトリック

    4. タイムゾーン情報を使用してMySQLに日時を保存する方法