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

PostgreSQLの文の最後の2つの単語を一致させるにはどうすればよいですか?

    REGEXP_MATCHESを使用する代わりに 一致の配列を返す場合は、SUBSTRINGを使用する方がよい場合があります これにより、TEXTとして一致するようになります 直接。

    @Abelistoが共有したように、正しいパターンを使用して、これを行うことができます:

    SELECT SUBSTRING('My name is Harry Potter' FROM '\w+\W+\w+$')
    

    これはHarry Potterを返します {"Harry Potter"}とは対照的に

    @Hamboneのコメントによると、最後の単語のいずれかにアポストロフィのように句読点が含まれている場合は、次のパターンの使用を検討する必要があります。

    SELECT SUBSTRING('My name is Danny O''neal' FROM '\S+\s+\S+$')
    

    上記は正しくDanny O'nealを返します O'nealだけではなく



    1. betweenキーワードを使用すると、rownumは行を表示しません

    2. ClusterControlCLIからPostgreSQLデータベースを管理する方法

    3. ORA-28000を解決する方法アカウントがロックされています

    4. リレーショナルデータベース