SQLServerではOracleなどでサポートされている文字列の前後を取り除く「trim」がありません。
文字列にある前後の空白を取り除くには「LTRIM」と「RTRIM」を組み合わせて実現します。
【2021.02.24追記】
SQLServer2017よりTrim関数がサポートされています。
SQLServerのTrim関数は1度に複数の文字を前後から取り除ける
SQLServer2017で実装されたTrim関数は前後の半角空白文字を取り除けるだけではなく、複数の文字を1度に取り除...
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関数が追加されました。