2016-06-30 8 views
0

を除去することによって、group by句を使用してデータを取得します。私はこのような列を持っているスペーストリミング/

ここで「主婦」と「妻」は似たようなデータですが、違いは2つの単語間のスペースです。私たちがグループを使用する場合、それは別のデータを作るのでそれによって間違っている

私は

Occupations 
------------ 
Housewife 
Housework 

のように私のテーブルの列は、私たちがして、グループを使用してカラムから冗長性を取り除くことができますしたい.....または他の方法へデータを取得しますか?

答えて

1

機能translate()を使用すると、文字列からスペースを削除できます。

with the_data(occupation, amount) as (
    values 
     ('Housewife', 1), 
     ('House wife', 2), 
     ('Housework', 3), 
     ('House work', 4) 
    ) 

select 
    translate(occupation, ' ', '') as occupation, 
    sum(amount) as amount 
from the_data 
group by 1; 

occupation | amount 
------------+-------- 
Housewife |  3 
Housework |  7 
(2 rows) 
+0

魔法のような... –

関連する問題