次のクエリがあります。
SELECT
users.*,
classes.*,
evaluation.student_id,
evaluation.class_id,
evaluation.chapter_title,
(SELECT
`score`
FROM
`evaluation`
WHERE
`class_id` = 1
AND
`id`
IN
(SELECT
MAX(`id`)
FROM
`evaluation`
WHERE
`class_id` = 1
GROUP BY
`chapter_title`)
GROUP BY
`chapter_title`)
AS
`score`,
(SELECT
`total_score`
FROM
`evaluation`
WHERE
`class_id` = 1
AND
`id`
IN
(SELECT
MAX(`id`)
FROM
`evaluation`
WHERE
`class_id` = 1
GROUP BY
`chapter_title`)
GROUP BY
`chapter_title`)
AS
`total_score`
FROM
(`evaluation`
INNER JOIN
`users`
ON
evaluation.student_id=users.id)
INNER JOIN
`classes`
ON
evaluation.class_id=classes.id
WHERE
users.role='student'
AND
evaluation.class_id = 1
AND
evaluation.student_id = 8
しかし、phpmyadmin でこのクエリを実行すると、次のようなエラー メッセージが表示されます。
#1242 - Subquery returns more than 1 row
クエリが間違っています。助けてください。前もって感謝します。
私はこのテーブルを持っています:
ユーザー
クラス
評価
評価テーブル(最後の画像)で.私は、最高のIDを持ち、8のstudent_idを持つ個別のchapter_titleまたはグループ化されたchapter_titleのみを返したいと思います.
このクエリを使用する必要がありましたが、エラーが返されます。