PHP和MySQL——排序或分组——在ID后面


PHP and MySQL - sort or group - after the ID

更新:2013年6月30日

$phonesRelated = $DB->getRandom(" `".DB_PREFIX."phones` a, `".DB_PREFIX."phones_categories` b ", " a.id ", " AND a.id=b.phone_id AND b.phone_id!='".$phone['id']."' AND b.category_id IN (".implode(",", $arr).") GROUP BY a.id", 3);
$smarty->assign("phones", $phonesRelated);

你好,

  1. ".DB_PREFIX."phones-表示具有更多列的电话的表(一次是ID)

  2. ".DB_PREFIX."phones_categories-表示具有2列的表(phone_id[与".DB_PREFIX."phones中的id具有相同的编号],category_id[是类别的编号])

示例:我们在网页iphone3上,该网页在ID列的表".DB_PREFIX."phones中ID=7。

我需要的是让查询在ID=7->ID=8,ID=9,ID=10之后返回手机ID。此时,查询从表".DB_PREFIX."phones_categories的末尾返回ID为ID=46、ID=47、ID=48的记录。

有人能帮我提示一下在代码中添加什么以使其返回连续的ID吗?

只需在查询的末尾添加:

ORDER BY name DESC //Or whatever serves as name

您希望它们按顺序排列:Iphone5、Iphone4s、Iphone4…还是不在乎,只要每次都一样?

如果是第一种情况,则执行前面建议的答案,如果不是,则需要确保在将行输入到表中时,每次

都以相同的顺序执行