Хорошо, как я могу объяснить.MySql Присоединиться и подзапрос
- Существует много
child.sid
доparent.id
. - Есть много
child.nid
кchild.sid
- Есть много
child.id
кchild.nid
child.id
только идентификатор дочерней строки. И каждая строка имеет столбец rating
.
В запросе я группирую child.nid
. Но возвращаемые результаты - это первая запись (самая низкая child.id
) для каждого nid
. То, что я хочу, является самым высоким рейтингом child.id
за это nid
.
$construct = "SELECT child.* FROM outcomes child
JOIN outcomes parent on parent.id=child.sid JOIN
WHERE (parent.name LIKE '%$search%') GROUP BY child.nid,child.sid
ORDER BY child.rating DESC";
Я попытался ORDER BY child.rating DESC
, но это должно произойти до GROUP BY child.nid
.
Любая идея, как решить эту проблему? подзапрос?
попробовал это и он i ошибка «У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашему серверу MySQL ... ». он все еще не работает – user892134
Я только что вставил ваш код и разместил запрос, поэтому я предположил, что ваш исходный запрос был прав, но он выглядит неправильно. Я обновил его, чтобы удалить два экземпляра результатов слова, которые выглядят как проблема. – davidethell