我有一个sql查询:
SET @row_num=0;
SELECT @row_num:=@row_num+1 as 'Num', book_title, author_name
FROM books当我在phpmyadmin中测试这个查询时,它会完美地显示结果,但是当我在宾得用户控制台中测试它时,它会显示错误。
有人能告诉我我的问题出了什么问题吗?我还有别的方法可以修复它,这样它才能在五旬节中完美地显示结果吗?
发布于 2014-10-07 07:02:06
试试这段代码。
SET @row_number:=0;
SELECT @row_number:=@row_number+1 AS row_number,book_title, author_name FROM books;可能对你有帮助。
发布于 2014-02-14 07:03:29
尝试构建一个查询,如下所示:
SELECT
@row_num := @row_num + 1 as 'Num',
book_title,
author_name
FROM
books JOIN (SELECT @row_num := 0 FROM DUAL) as sub;目前(我猜)的问题是,您有两个语句,而不是一个:
SET @row_num=0;
-- ^ statement #1
SELECT @row_num:=@row_num+1 as 'Num', book_title, author_name
FROM books;
-- ^ statement #2所以,试着把它们混合到一个声明中,就像我前面提到的。对于MySQL来说,这是一种合法的语法。
https://stackoverflow.com/questions/21772779
复制相似问题