【发布时间】:2014-06-06 04:57:58
【问题描述】:
我在 MySQL 数据库中有一个表,如下图snap shot。
我需要根据每组产品中给定的rating_id(主键)获取当前行号。
目前下面的SQL会根据rating_id从表的所有行中获取一个行号。
SELECT rownum
FROM (SELECT @rownum := @rownum + 1 AS rownum,
tbl.rating_id
FROM rating tbl,
(SELECT @rownum := 0)t
ORDER BY tbl.rating_id DESC)t
WHERE rating_id = ?
如何将此查询限制为特定的产品组 (prod_id)?
换句话说,如何从一组特定产品(prod_id)的行中获取行号?
【问题讨论】:
-
将
AND prod_id BETWEEN x AND y添加到您的外部选择语句中? -
在内部查询中添加 WHERE 或在外部查询中添加 AND(并在 SELECT 部分添加
prod_id)。