SQLServerではTRIM関数がありません

SQLServerではOracleなどでサポートされている文字列の前後を取り除く「trim」がありません。

文字列にある前後の空白を取り除くには「LTRIM」と「RTRIM」を組み合わせて実現します。

SQLServerでは空白を取り除くTRIM関数がない

SQLServerではOracleやMySQLなどでサポートされている空白を取り除くTRIM関数がないので、カラムの前後の空白を取り除くにはLTRIM関数とRTRIM関数を組み合わせて実現します。
※SQLServer 2017でTRIM関数が追加されました。

LTRIM、RTRIMなし

SELECT '|' + ' あいうえお ' + '|' AS TRIMなし
TRIMなし
| あいうえお |

LTRIM

SELECT '|' + LTRIM( ' あいうえお ' ) + '|'
    AS LTRIMだけ
LTRIMだけ
|あいうえお |

RTRIM

SELECT '|' + RTRIM( ' あいうえお ' ) + '|'
    AS RTRIMだけ
RTRIMだけ
| あいうえお|

LTRIMとRTRIM両方

SELECT '|' + LTRIM(RTRIM( ' あいうえお ' )) 
    + '|' AS LTRIMとRTRIM両方
LTRIMとRTRIM両方
|あいうえお|

ちょっとめんどくさいですね。
なんでないのでしょう?
※SQLServer 2017でTRIM関数が追加されました。

タイトルとURLをコピーしました