私はChar(15)
フィールドを持っており、このフィールドには以下のデータがあります。
94342KMR
947JCP
7048MYC
これを分解して、最後の右3文字を取得し、左にあるものを取得する必要があります。私の問題は、左のコードがご覧のように常に同じ長さではないことです。
SQLでこれを実現するにはどうしたらいいでしょうか?
ありがとうございます。
SELECT RIGHT(RTRIM(column), 3),
LEFT(column, LEN(column) - 3)
FROM table
また、RIGHT
とRTRIM
の組み合わせ(固定長のカラムとの複雑な関係を避けるため)、LEFT
とLEN
の組み合わせ(最後の3文字を除いた必要なものだけを取り出すため)を使用してください。
もし長さがlt;=3になるようなことがあれば、LEFT
の呼び出しが欲張ったものにならないように、CASE
文を使わなければならないでしょう。