2

我有这样的用户表。以下 2 个字段也是固定的。userId 是主键。

userId    name
898        abc
900        xyz
902        rrr
904        wer

如果我获取特定userid结果,则结果应显示为行号。例如userid 902,结果应该显示3

如何编写 SQL 查询?

4

3 回答 3

2

尝试这个

    SET @a:=0;

    SELECT  @a:=@a+1 serial_number, 
          userId, name 
    FROM users;

这是SQL 小提琴

NB-尽管您应该将 PK 作为自动增量添加到表中,不仅仅是为了获取序列号,而是为了向表中添加索引以更快地获取记录

于 2013-10-08T11:26:47.417 回答
0

尝试这个

set @row_num = 0; 
SELECT user_id,name, @row_num := @row_num + 1 as index FROM tablename
ORDER BY user_id desc;
于 2013-10-08T10:30:10.233 回答
-1

更容易的出路。

$row_number = 1;
$sql = "SELECT column1, column2 ORDER BY column1";
$result = mysqli_query($conn, $sq1);

while($row = mysqli_fetch_row($result))
{

echo "<tr><td>".$row_number++."</td><td>".$row['0']."</td><td>".$row['1']."</td> 
</tr>";
}
于 2019-02-18T16:20:10.993 回答