データベースクラスに問題があり、理解できません。
私は次のような郡と呼ばれるテーブルを持っています:
state_code | name | population
| |
| |
(各state_code内には複数の郡があります)
ちょうどである状態と呼ばれる別のテーブルがあります
state_code | name
|
|
とにかく、スキーム(state_name、county_name、county_population)を返すクエリが必要です。このクエリは、州名の順に、各州で最も人口の多い5つの郡名を人口の降順でリストします。
適切なスキームを生成するクエリがありますが、上位5つだけでなく、結果が多すぎます。
SELECT state.name AS state_name, county.name AS county_name, county.population
FROM state JOIN county ON state.code = county.state_code
GROUP BY state.name, county.name, county.population
ORDER BY state.name, county.population DESC
私はランキングを含むより複雑な解決策を試みましたが、私たちの学校には、非常に困難なPARTITION OVERまたはRANK()がないPostgreSQLバージョン8.3しかありません。
ありがとう