好的,当我发出请求时,我希望具有相同 group_id 的所有项目都“在一起”,例如 117,117,134,111 可以,但 117,134,117,111 不行,因为 group_id 117 并非全部“在一起”。我希望这是有道理的。我知道如何实现这一点的唯一方法是按 group_id 对我的结果进行排序,但是如果我想按类似价格或其他方式进行排序,有没有办法在将所有匹配的 group_id 保持在一起的同时做到这一点?
谢谢。
最佳答案
是的,您只需同时订购,所以您的 ORDER BY
应该如下所示:
ORDER BY group_id, price
这将首先按 group_id 排序,然后按价格排序。所以所有相同的 group_id 会在一起,但只要有多个相同的 group_id,它们就会按价格排序。
虽然你的问题有点模棱两可,所以只是为了解释以防万一它是你真正想要的 - 没有简单的方法来“主要”按价格订购并且只是将相同的 group_ids 放在一起,这真的没有任何意义。我的意思是,如果您有以下数据:
group_id price
117 2.00
117 5.00
111 4.00
134 1.00
您不能轻易按此顺序选择它:
group_id price
134 1.00
117 2.00
117 5.00
111 4.00
关于MySQL:在结果中将列放在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/802430/