2016-12-07 14 views
1

オフリードするキーワード私はこのトリム複数の末尾との文字列MYSQL

--------------- 
|town   | 
--------------- 
|Longton North | 
|Longton South | 
|Longton North | 
|Longton East | 
|Longton West | 
|East Valley | 
|West Valley | 
--------------- 

のようなデータに何かを持つテーブルを持っている私は

TRIM(BOTH 'North' FROM town) 

を使用して文字列から末尾と先頭文字をトリミングする方法を知っている。しかし、私私の結果から北、南、西、東を整えたい。 `TRIM(トリム(TRIM:だから出力は

--------- 
|town  | 
--------- 
|Longton | 
|Longton | 
|Longton | 
|Longton | 
|Longton | 
|Valley | 
|Valley | 
--------- 
+3

ヒントを指定した。これはあなたのための任意の方法を動作します。これを試してみてくださいようにする必要があり(TRIM(。。)))) ')を実行する。 –

+0

@GordonLinoffは魅力的に機能します。ご協力いただきありがとうございます。 –

+0

ええ、それは髪トリマーのようです:) – Rahul

答えて

1

select 
trim(TRIM(BOTH 'South' FROM TRIM(BOTH 'North' FROM TRIM(BOTH 'East' FROM TRIM(BOTH 'West' FROM town))))) from tbl 

以上

select trim(case 
when position('North' in town) > 0 then TRIM(BOTH 'North' FROM town) 
when position('South' in town) > 0 then TRIM(BOTH 'South' FROM town) 
when position('East' in town) > 0 then TRIM(BOTH 'East' FROM town) 
when position('West' in town) > 0 then TRIM(BOTH 'West' FROM town) end) 
from tbl 
+0

'position'チェックは単なるオーバーヘッドです。 –

+0

この' select trim(TRIM(南) 'から'南 'からTRIM(両方とも北からTRIM (BOTH 'West' FROM town)))))from tb' –

+0

これは良い答えになるでしょう –

関連する問題