0
好吧,尽可能简单,因为我可以解释。MySql加入和子查询
- 有很多
child.sid
到parent.id
。 - 有很多
child.nid
到child.sid
- 有很多
child.id
到child.nid
child.id
只是一个子行的ID。并且每行有rating
列。
在查询我分组child.nid
。但是,返回的结果是每个nid
的第一项(最低child.id
)。我想要的是nid
的最高评分child.id
。
$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
之前发生。
任何想法如何解决这个问题?子查询?
试过,它是我的错误'你的SQL语法有错误;检查与你的MySQL服务器相对应的手册......“它仍然不起作用 – user892134 2012-02-27 13:16:34
我刚刚粘贴了你的代码并进行了查询,所以我假设你的原始查询是正确的,但它看起来不正确。看起来是问题的单词结果的两个例子。 – davidethell 2012-02-27 19:07:36