-3

SQL Server に常に数字で始まるデータ列があり、数字の後に追加の詳細を含むスペースがある場合があります。これはテキスト列です。スペースまたは追加情報がある場合は、スペースの後およびスペースを含むすべてを削除するクエリが必要です。つまり、この列に必要なのは数値だけです。数だけの場合とそうでない場合があります。これを行うクエリで支援を受けることはできますか?

4

3 に答える 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 に答える