テストバンクの 2 つの質問ごとの類似性を含むテーブルがあります。
これは、 question_idが question_id6
と 84% 類似していることを意味します10
。また、question_id の類似の質問が 12 件あります6
。
最も関連性の高い質問、または関連性の高い上位 7 つの質問です。
私はMysqlの削除順序を見て 、試しました:
DELETE FROM exam_relatedquestion
WHERE
`exam_relatedquestion`.id IN (
SELECT
`exam_relatedquestion`.id
FROM
(
SELECT `exam_relatedquestion`.id
FROM `exam_relatedquestion`
GROUP BY
`exam_relatedquestion`.from_question_id_id
ORDER BY
`exam_relatedquestion`.similarity DESC
LIMIT 7
) a
)
しかし、エラーメッセージは次のとおりです。
[Err] 1055 - SELECT リストの式 #1 は GROUP BY 句になく、GROUP BY 句の列に機能的に依存しない非集計列 'den.exam_relatedquestion.id' が含まれています。これは sql_mode=only_full_group_by と互換性がありません
質問に関連する上位 7 件以外の行を削除するにはどうすればよいですか?