以下の例のような MSSQL データベース フィールドがあります。
u129 james
u300 chris
u300a jim
u202 jane
u5 brian
u5z brian2
最初の文字セットを選択する方法はありますか? 基本的に、最初の行のスペースまでのすべての文字を選択しますか?
LEFT、RIGHT、LEN をいろいろ試してみましたが、私の例のように可変の文字列長でそれを実行する方法がわかりませんでした。
ありがとう!
ベストアンサー1
LEFT
との組み合わせを使用してCHARINDEX
最初のスペースのインデックスを見つけ、その左側にあるすべてのものを取得できます。
SELECT LEFT(YourColumn, charindex(' ', YourColumn) - 1)
列にスペースがない場合は次のようになります。
SELECT LEFT(YourColumn, CASE WHEN charindex(' ', YourColumn) = 0 THEN
LEN(YourColumn) ELSE charindex(' ', YourColumn) - 1 END)