164

という SQL Server テーブルの列に末尾のスペースがありますCompany Name

この列のすべてのデータには、末尾のスペースがあります。

それらをすべて削除したいのですが、末尾にスペースを入れずにデータを取得したいと考えています。

社名はこんな感じ"Amit Tech Corp "

会社名にしたい"Amit Tech Corp"

4

13 に答える 13

335

試す SELECT LTRIM(RTRIM('Amit Tech Corp '))

LTRIM- 文字列の左側から先頭のスペースを削除します

RTRIM- 右からスペースを削除します

元:

update table set CompanyName = LTRIM(RTRIM(CompanyName))
于 2013-02-08T22:00:57.873 に答える
34

末尾のスペースをトリミングするには、使用する必要があります

UPDATE
    TableName
SET
    ColumnName = RTRIM(ColumnName)

ただし、先頭と末尾のスペースをすべて削除する場合は、これを使用します

UPDATE
    TableName
SET
    ColumnName = LTRIM(RTRIM(ColumnName))
于 2013-02-08T22:01:28.533 に答える
15

SQL Server は Trim() 関数をサポートしていません。

ただし、LTRIM() を使用して先頭のスペースを削除し、RTRIM() を使用して末尾のスペースを削除できます。

LTRIM(RTRIM(ColumnName)) として使用して、両方を削除できます。

update tablename
set ColumnName= LTRIM(RTRIM(ColumnName))

更新:2022年

私は7年前(2015年)にこの質問に答えました。当時、SQLサーバーにはトリミングを直接行う機能がありませんでした。

しかし、SQL Server 2017 から、Trim()関数が導入されました。

そのため、SQL Server 2017 以降のバージョンを使用している人なら誰でも、以下と同じことを簡単に行うことができます。

update tablename
set ColumnName= TRIM(ColumnName)

ただし、古いバージョンを使用する場合は、7 年前に述べた方法を引き続き使用する必要があります。

于 2015-12-14T05:43:41.167 に答える
7
update MyTable set CompanyName = rtrim(CompanyName)
于 2013-02-08T22:02:20.213 に答える
2

TRIMSQL関数を使用します。

SQL Serverを使用している場合は、次を試してください。

SELECT LTRIM(RTRIM(YourColumn)) FROM YourTable
于 2013-02-08T22:02:49.140 に答える
2

ETLを使用してExcelファイルからデータを抽出した後、同じ問題が発生し、最終的に解決策が見つかりました:

https://www.codeproject.com/Tips/330787/LTRIM-RTRIM-doesn-t-always-work

それが役に立てば幸い ;)

于 2017-05-13T10:20:11.943 に答える
0

例:

SELECT TRIM('   Sample   ');

結果:'Sample'

UPDATE TableName SET ColumnName = TRIM(ColumnName)
于 2015-10-29T11:12:43.643 に答える
0

使用している SQL Server のバージョンによって異なります。

SQL Server 2008 r2、2012、および 2014 では、単純に使用できますTRIM(CompanyName)

SQL Server TRIM 関数

他のバージョンでは、使用する必要がありますset CompanyName = LTRIM(RTRIM(CompanyName))

于 2015-04-16T19:48:57.493 に答える