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

RailsとPostgreSQLを使用してオカレンスを含むグループ化されたリストを返します

    あなたの問題:

    残念ながら、Postgresの厳密さは、group by句ですべてのフィールドを指定する必要があるため、そのクエリを破ります。

    さて、これはPostgreSQL 9.1で多少変更されました(9.1のリリースノートを引用):

    GROUP BY以外を許可する GROUP BYで主キーが指定されている場合のクエリターゲットリストの列 条項(Peter Eisentraut)

    さらに、あなたが説明する基本的なクエリは、これに遭遇することさえありません:

    最も一般的に使用される5つのタグのリストと、それらがタグ付けされた回数を表示します。

    SELECT tag_id, count(*) AS times
    FROM   taggings
    GROUP  BY tag_id
    ORDER  BY times DESC
    LIMIT  5;
    

    いずれの場合でも機能します。




    1. OracleのFROM_TZ()関数

    2. MariaDBでのBIT_LENGTH()のしくみ

    3. SQLSTATE [42000]:構文エラーまたはアクセス違反:1064 SQL構文にエラーがあります— PHP — PDO

    4. 可用性グループ接続の構成