問題:
文字列の最初と最後からスペースまたは特定の文字を削除したい。
例:
データベースには、company
2列のデータ:id
およびname
。
id | 名前 |
---|---|
1 | 'スーパーマーケット' |
2 | 「グリーンショップ」 |
3 | 'モダンブックショップ' |
各会社の名前を削除して、最初と最後の不要なスペースを削除しましょう。
解決策:
TRIM
を使用します 働き。作成するクエリは次のとおりです。
SELECT TRIM(' ' FROM name) AS new_name FROM company;
または、FROM
なしで短いバージョンを使用することもできます 削除する文字としてのキーワードとスペース。デフォルトでは、TRIM
これは、TRIM関数の引数の特定の列または式に格納されている文字列からスペースを削除するものとして扱われます。
SELECT TRIM(name) AS new_name FROM company;
両方のクエリの結果は次のとおりです。
new_name |
---|
「スーパーマーケット」 |
「グリーンショップ」 |
「モダンブックショップ」 |
ディスカッション:
TRIM
を使用する テーブル内の文字列をトリミングする場合に機能します。この関数を使用すると、文字列の最初と最後から特定の文字を削除できます。この関数は次の引数を取ります:
- 文字列からトリミングする文字。デフォルトではスペースです。
-
FROM
キーワードの後に、トリミングする文字列列の名前が続きます。
この例では、次のようになります。
TRIM(' ' FROM name)
T-SQLでは、文字列の最初または最後からのみ別の文字のスペースを削除することもできます。
以下の例では、RTRIM()関数を使用して、各会社の最後のスペースを削除しています。
SELECT RTRIM(name) AS new_name FROM company;
new_name |
---|
'スーパーマーケット' |
「グリーンショップ」 |
'モダンブックショップ' |
ただし、LTRIM
を使用する場合は、最初にスペースをトリミングするためにも使用できます。 代わりに機能する:
SELECT LTRIM(name) AS new_name FROM company;
クエリはname
を返します 最後にスペースのない列。最初のスペースは変更されていないことに注意してください。
new_name |
---|
「スーパーマーケット」 |
「グリーンショップ」 |
「モダンブックショップ」 |