1

ここに次のようなデータがあります。

'US     ' -- (5 spaces) 

このようなレコードが 300 件以上ありますが、これらの 5 つのスペースを取り除く方法はありますか?

4

3 に答える 3

3

とを使用RTRIMLTRIMて、末尾または先頭のスペースを削除できます。

レコードを選択するだけの場合:

SELECT RTRIM(State) AS State
FROM YourTable

テーブルを更新してスペースを削除する場合:

UPDATE YourTable 
SET State = RTRIM(State)
于 2012-08-23T17:18:02.423 に答える
0

RTRIM文字列の後の末尾の空白を削除するために使用します。

tbl1からRTRIM(col1)を選択します

さらに、を使用LTRIMして先頭の空白を削除できます。

私の知る限り、この関数はSQL Server、Oracle、MySQL、およびPL/SQLで機能します。

于 2012-08-23T17:26:50.747 に答える
0

ほとんどのデータベースは、RTRIM() または TRIM() 関数をサポートしています。

スペースを空の文字列に置き換えることもできます。

select replace('abcde   ', ' ', '')

(replace 関数は、別のデータベースでは別の名前で呼ばれる場合があります。)

もう 1 つの可能性は、基になる型が VARCHAR ではなく CHAR であるということです。char(7)あなたの例では、列はではなくとして宣言されている可能性がありますvarchar(7)。その場合、値が 7 文字にパディングされるため、スペースを削除できません。

この場合の最善の方法は、定義を varchar(7) に変更することです。

于 2012-08-23T17:25:09.403 に答える