SQL Server に常に数字で始まるデータ列があり、数字の後に追加の詳細を含むスペースがある場合があります。これはテキスト列です。スペースまたは追加情報がある場合は、スペースの後およびスペースを含むすべてを削除するクエリが必要です。つまり、この列に必要なのは数値だけです。数だけの場合とそうでない場合があります。これを行うクエリで支援を受けることはできますか?
質問する
8054 次
3 に答える
2
これを試して
Select case When charIndex(' ', columnName) > 0
Then substring(columnName, 1, charIndex(' ', columnName)-1)
else ColumnBame End
From tableName
于 2013-05-22T18:01:05.843 に答える
2
これを試してください(mydbとtextfieldをあなたが持っている名前に置き換えてください):
UPDATE mytable
SET textfield = LEFT(textfield+' ', CHARINDEX(' ', textfield) - 1)
WHERE CHARINDEX(' ', textfield) > 0
于 2013-05-22T18:05:38.470 に答える
0
私は次のようなことを提案します:
SELECT CASE
WHEN ISNUMERIC(SUBSTRING(YourNumber, 1)) THEN SUBSTRING(YourNumber, 1, len(YourNumber) -1)
WHEN ISNUMERIC(SUBSTRING(YourNumber, 2)) THEN SUBSTRING(YourNumber, 2, len(YourNumber) -2)
WHEN ISNUMERIC(SUBSTRING(YourNumber, 3)) THEN SUBSTRING(YourNumber, 3, len(YourNumber) -3)
WHEN ISNUMERIC(SUBSTRING(YourNumber, 4)) THEN SUBSTRING(YourNumber, 4, len(YourNumber) -4)
END
FROM TableName
于 2013-05-22T18:00:44.603 に答える