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

SQL:行間の最長の共通文字列を検索します

    すべての行の中で最も一般的に表示される単語(スペースで区切られた最も一般的な単語)を取得しても問題がない場合は、次を使用できます。

    select word, count(distinct rn) as num_rows
    from(
    select unnest(string_to_array(col, ' ')) as word,
           row_number() over(order by col) as rn
    from tbl
    ) x
    group by word
    order by num_rows desc
    

    フィドル: http://sqlfiddle.com/#!15/bc803/9/0

    これにより、appleという単語が見つかることに注意してください。 5行ではなく4行の間。これはAPPLE123が原因です。 は1語ですが、APPLE 123 2つの単語になり、そのうちの1つはAPPLEであり、カウントされますが、カウントされません。



    1. SQLでの挿入後、更新後、削除後のトリガーの作成

    2. OracleTAF機能をサポートするJava接続文字列

    3. SQLの切り捨て

    4. JPAを使用したSpringのカスタムクエリ