更新后:30.06.2013PHP和MySQL - 排序或分组 - 标识
$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);
嗨,
".DB_PREFIX."phones
- 代表与具有多个列的手机表(一次是ID )".DB_PREFIX."phones_categories
- 表示表2列(phone_id [具有从".DB_PREFIX."phones
ID相同的数]和CATEGORY_ID [是多少Ò F中的类别])
例如:我们在其上具有ID = 7在表".DB_PREFIX."phones
上ID
柱网页的iPhone3。
我需要的是在ID = 7 - > ID = 8,ID = 9,ID = 10之后使查询返回电话ID。此时,查询通过ID为46,ID = 47,ID = 48的表".DB_PREFIX."phones_categories
末尾的ID返回记录。
有人可以帮助我提示什么要添加在代码,使其返回连续的ID?
将'order by'添加到您的sql中,并通过名称而不是ID – Dave
您正在使用任何聚合函数吗? – Strawberry
我不知道你的意思是“聚合函数”(我不太了解PHP和MySQL)。上面的代码工作正常,只有我不能让它连续选择ID(它从表中选择了最新的)。我发现像我的问题在这里:http://stackoverflow.com/questions/11431279/how-can-get-records-after-specific-id-in-mysql,但我不知道把它放在我的代码。 – owner