|
分類:[.NET 全般]
文字列の両端に指定した文字があれば削除したいのですが どうすればよいのでしょうか?
'ABC'→'ABC' '-ABC'→'ABC' '-ABC-'→'ABC' 'ABC-'→'ABC'
力づくでやってみると以下のようになるのですが もっと Replace や LTrim や RTrim などを使って スマートにできる方法はありますか?
SELECT ABC FROM ( SELECT CASE WHEN SUBSTRING(ABC, LEN(ABC), 1) = '-' THEN SUBSTRING(ABC, 1, LEN(ABC) - 1) ELSE ABC END AS ABC FROM ( SELECT CASE WHEN SUBSTRING(ABC, 1, 1) = '-' THEN SUBSTRING(ABC, 2, LEN(ABC) - 1) ELSE ABC END AS ABC FROM ( SELECT 'ABC' AS ABC UNION SELECT '-ABC' AS ABC UNION SELECT 'ABC-' AS ABC UNION SELECT '-ABC-' AS ABC ) AS ABC1 ) ABC2 ) ABC3
|