这是我的mysql查询
SELECT network_mst.NetworkId,network_mst.NetworkName,network_mst.InternationalDBStatus,network_mst.Of fshoreDBStatus,network_mst.InterDBStatus,network_mst.IntraDBStatus
FROM network_mst INNER JOIN carrier_network ON network_mst.NetworkId=carrier_network.NetworkId
INNER JOIN user_network ON network_mst.NetworkId=user_network.NetworkId WHERE UserId=1
AND carrier_network.CarrierId IN (1) GROUP BY network_mst.NetworkId ORDER BY network_mst.NetworkName;
结果数据是
对不起,小图片它有一个称为NetworkId的字段。
所以我的问题是如何找到具有NetworkId 2的行的行索引。这里的答案是具有NetworkId 2的行的行索引。
但是如何使用查询找到这个
最佳答案
尝试这个:
SET @rownum = 0;
Select *
FROM
(
Select *, (@rownum := @rownum+1) as rank
FROM
(
-- Your current query here
) t
) sub WHERE rank = 3
该查询应返回带有
netword_id = 2
的行,因为它是第三行。但是,您必须注意最里面的查询中的ORDER BY
子句,因为它是控制排名顺序的因素。关于mysql - 从MySQL中选定的行数中查找行的行索引,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12795473/