こんにちは - 私は MySQL 初心者です。さまざまなビジネス リスティングのテーブルがあり、一意の都市名と都市ごとのリスティング数を含む、cities という 2 番目のテーブルを作成しようとしています。次のように、このデータをうまく取得する SELECT ステートメントを実行できます。
SELECT city,state,sum(count)
FROM (
SELECT city,state, 1 AS count FROM listings
) results
GROUP BY city
ORDER BY sum(count) DESC,city;
ただし、テーブルを更新したいのですが、適切なステートメントが機能しないようです。これは私が持っている最新のものですが、現在「グループ機能の無効な使用」エラーが発生しています。
INSERT INTO cities(city,state,size)
SELECT city,state,sum(count)
FROM (
SELECT city,state, 1 AS count FROM listings
) results
ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id), size=sum(count);
どんな助けでも大歓迎です!