1
次のように私のSQLステートメントがあるSQL一時テーブルを使用しながら、1146テーブル「college_small.result」が存在しません。ここで "結果"。エラーコード:
次のように私のSQLステートメントがあるSQL一時テーブルを使用しながら、1146テーブル「college_small.result」が存在しません。ここで "結果"。エラーコード:
最大テイク数を持つcourse_id
を取得するだけの場合は、カウントでサブクエリを注文し、結果セットを1つのレコードに限定することができます。
SELECT course_id, COUNT(course_id) AS count
FROM takes
GROUP BY course_id
ORDER BY COUNT(course_id) DESC
LIMIT 1
あなたもかかるの最大数のネクタイがあることをイベントでは、すべてのコースID値を取得したい場合は、次のようなやや複雑クエリ試すことができます。
SELECT result.course_id
FROM
(
SELECT course_id, COUNT(course_id) AS count
FROM takes
GROUP BY course_id
) AS result
WHERE result.count = (
SELECT COUNT(*)
FROM takes
GROUP BY course_id
ORDER BY COUNT(*) DESC
LIMIT 1
)
をそれは私が質問を解決するのを助けることができます。しかし、私はまだ一時テーブルを2回使用することについて尋ねたいです。実際には普通ではないかもしれません – dapao
一時テーブルを再利用する一般的な方法の1つは、_commonテーブル式_ )。 SQL Server、Oracle、Postgresはすべてこの機能をサポートしていますが、MySQLではサポートしていません。ビューや動的SQLを使用して、MySQLで一時テーブルを再利用できるかもしれません。 –