sql >> データベース >  >> RDS >> Database

T-SQLで文字列の先頭または末尾のスペースを削除する方法

    問題:

    文字列の最初と最後からスペースまたは特定の文字を削除したい。

    例:

    データベースには、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
    「スーパーマーケット」
    「グリーンショップ」
    「モダンブックショップ」

    1. PostgreSQLでの低レベルのリソースプーリングに関するいくつかのアイデア

    2. 既存のPostgresテーブルを可能な限り透過的にパーティションテーブルに移行するにはどうすればよいですか?

    3. ComboBox.ValueMemberおよびDisplayMember

    4. DROPよりも優れたALTER