mysql如果你只是需要在SQL查询的情况下需要使用Oracle的rownum同等的效果可直接通过以下方式去查看获取rownum的值
SELECT
@rownum := @rownum +1 AS rownum,
e.*
FROM
(SELECT
@rownum := 0) r,
employee e
但是这种方法在视图中是不能保存的,会报错
视图中不能存入变量,所以我们利用function函数来辅助视图中建立rownum。
先建立function函数计算rownum的增长。
CREATE FUNCTION `func_inc_var_session`(reset BIT) RETURNS int
BEGIN
IF reset THEN
SET @var := 0;
ELSE
SET @var := IFNULL(@var,0) + 1;
END IF;
RETURN @var;
END
然后在View中调用这个函数func_inc_var_session,注意下面框出的部分不能写错,不然会达不到效果。