如何从mysql获取替代记录?

时间:2014-04-21 08:00:42

标签: php mysql yii

我有桌子喜欢这个

enter image description here

我需要这样的东西 enter image description here

如何做到这一点。有没有办法查询它自己或使用PHP ..

我尝试在mysql中使用rand命令但我在我的情况下不会工作。

我认为通过php只有一个原因。请告诉我如何做到这一点。

1 个答案:

答案 0 :(得分:0)

在mySql中,假设表名为“products”,以下查询给出了结果。

select a.* from products a ,  products b where a.product_id >= b.product_id and a.brand = b.brand group by a.product_id order by count(b.product_id) , a.product_id;

结果是

+------------+---------+------+-------+
| product_id | name    | etc  | brand |
+------------+---------+------+-------+
|          1 | sample1 | etc  |     1 |
|          4 | sample4 | etc  |     2 |
|          2 | sample2 | etc  |     1 |
|          5 | sample5 | etc  |     2 |
|          3 | sample3 | etc  |     1 |
|          6 | sample6 | etc  |     2 |
+------------+---------+------+-------+