如何在 PHP 应用程序中打印 mysql 中的行号

man*_*dan 4 php mysql row-number

我有一个 mysql 表需要在前端应用程序中显示数据以及行号。以下查询在 phpMyadmin 中完美运行

SET @row_num=0; SELECT (@row_num:=@row_num+1) AS num,INV,DOS,PTNAME,BAL,PROV     from sheet;
Run Code Online (Sandbox Code Playgroud)

但是当我在 php 项目中使用相同的代码时,它返回以下错误警告:mysql_fetch_array():提供的参数不是有效的 MySQL

下面是我的代码:

<?php 
$conn = mysql_connect("localhost","root","");
mysql_select_db("omega",$conn);
$sel="SET @row_num=0; SELECT (@row_num:=@row_num+1) AS             num,INV,DOS,PTNAME,BAL,PROV from sheet";
$sqlquery=mysql_query($sel);

while($dis=mysql_fetch_array($sqlquery))
{
echo"<tr>";
echo "<td>".$dis['num']."</td>";
echo "<td>".$dis['INV']."</td>";
echo "<td>".$dis['DOS']."</td>";
echo "<td>".$dis['PTNAME']."</td>"; 
echo "<td>".$dis['BAL']."</td>";    
echo "<td>".$dis['PROV']."</td>";       
echo"</tr>";
}
Run Code Online (Sandbox Code Playgroud)

dhr*_*dia 5

改变自

$sel="SET @row_num=0; SELECT (@row_num:=@row_num+1) AS num,INV,DOS,PTNAME,BAL,PROV from sheet";
Run Code Online (Sandbox Code Playgroud)

$sel="SELECT s.*, @rownum := @rownum + 1 AS num FROM sheet s, (SELECT @rownum := 0) r";
Run Code Online (Sandbox Code Playgroud)