这是我的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是3。 但是如何使用查询
找到它答案 0 :(得分:0)
试试这个:
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
子句,因为它控制着排名的顺序。