我有一张像这样的表:
id name category oindex
1 product1 cat1 3
2 product2 cat1 5
3 product3 cat2 1
4 product4 cat1 2
5 product5 cat4 1
oindex 列是产品的评估,从1到5(更少到更重要),其余的我认为非常冗长。
我想通过oindex选择整个表格顺序,以便最优质的产品出现在第一个位置,但我不希望有来自同一类别的许多连续产品。例如,如果您通过oindex选择和排序,您将获得前两个位置的product2和product1,但它们属于同一类别,因此从同一个类别连续2个是不正确的。理想情况下,它应该采用product2然后采用product4,然后返回product1。
你会如何处理这个问题?
答案 0 :(得分:1)
如果我理解正确的话就是这样:
SELECT * FROM table GROUP BY category ORDER BY oindex