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

SQLで文字列をトリミングする方法

    問題:

    文字列の最初と最後から特定の文字を削除したい。

    例:

    私たちのデータベースには、post 2列のデータ:id およびtitle

    id タイトル
    1 '犬に関するニュース'
    3 「ユーロビジョン2019」
    4 「新しい政治情勢」

    各投稿のタイトルをトリミングして、最初と最後の不要なスペースを削除しましょう。

    解決策:

    TRIMを使用します 働き。作成するクエリは次のとおりです。

    SELECT TRIM( BOTH ' ' FROM title ) as new_title
    FROM post;
    

    または、BOTHなしで短いバージョンを使用することもできます キーワード;デフォルトでは、TRIM これは両方の操作として扱われます。

    SELECT TRIM(' ' FROM title ) as new_title
    FROM post;
    

    両方のクエリの結果は次のとおりです。

    new_title
    「犬に関するニュース」
    「Eurovision2019」
    「新しい政治情勢」

    ディスカッション:

    TRIMを使用する テーブル内の文字列をトリミングする場合に機能します。この関数を使用すると、文字列の先頭または末尾、あるいは両端から特定の文字を削除できます。この関数は次の引数を取ります:

    • トリミングする端を指定するキーワード(オプション-BOTH デフォルト)。
    • 文字列からトリミングする文字。
    • FROM キーワードの後に​​、トリミングする文字列列の名前が続きます。

    この例では、次のようになります。

    TRIM( BOTH ' ' FROM title )
    

    上記のように、TRIM 最初の引数として他のキーワードを取ることができます。両端からのトリミングに加えて、文字列の最後または最初からのみ文字を削除できます:

    • TRAILING (最後から削除)
    • LEADING (最初から削除)

    次の例では、各タイトルの最後のスペースを削除しています(ただし、LEADINGを使用すると、最初のスペースをトリミングするためにも使用できます。 代わりにキーワード):

    SELECT TRIM( TRAILING ' ' FROM title ) as new_title
    FROM post;
    

    クエリはtitleを返します 最後にスペースのない列。最初のスペースは変更されていないことに注意してください。

    new_title
    「犬に関するニュース」
    「Eurovision2019」
    「新しい政治情勢」

    1. SELECTリストの他の場所でエイリアスを参照する

    2. Postgresデータベース内のすべてのテーブルを切り捨てる

    3. SQLServerの日付フォーマット関数

    4. Linuxで実行されているアプリケーションをSQLServerのAmazonRelationalDatabase Services(RDS)に接続する