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

複合ORSQLクエリ(WITHを使用したクエリ#1)およびCOUNT()の言い訳を使用した(クエリ#2)

    2つの問題:

    1. エラーメッセージに示されているように、geomがGROUP BYにリストされていない場合は、geomを集計関数でラップする必要があります。 。 min()を使用するだけです ...
    2. ロジックが逆になりました。 COUNT(*) = 1 OR ..である必要があります

    ただし、これは、NOT EXISTS

    SELECT s.name, s.admin, st_area(geom)
    FROM   vector.states s
    WHERE  st_area(s.geom) > 0.01           -- state big enough ...
       OR NOT EXISTS (                      -- ... or there are no other counties
             SELECT 1 FROM vector.states s2
             WHERE  s2.admin = s.admin
             AND    s2.pk_column <> s.pk_column  -- exclude self-join
             )
    ORDER BY s.admin;
    

    pk_columnを置き換えます 実際の主キー列を使用します。



    1. 完全なスキーマをダンプするためにmysqldumpに必要な最小GRANT? (トリガーがありません!!)

    2. 単純なSQLインジェクション用のBase64エンコード文字列

    3. MySQLを使用して、単一のテーブルの借方と貸方から残高を計算する

    4. ポリゴンポイントを取得するmysql