在选择查询中显示行号

时间:2011-01-01 09:46:05

标签: mysql sql

此查询有什么问题?它在rowno列中显示为null。

SELECT @rowno:=@rowno+1 `rn`,`id`, `title`, `topic` 
FROM stories,(SELECT @rownum:=0) r 
WHERE newstype='2';

我在'MySQL Query browser'中运行它

提前感谢。

2 个答案:

答案 0 :(得分:7)

你有一些问题:

  • 您需要在查询之前添加@rowno来初始化set @rowno = 0
  • 您错过了as中的@rowno:=@rowno+1 rn
  • rn是多余的,除非你认为这是(SELECT @rownum:=0) r的初始化,在这种情况下你会拼错它。

这应该有效:

@rowno

答案 1 :(得分:6)

在您使用rowno的增量中,但在初始分配中,您使用的是rownum