create proc test @curPage int,@pageSize int output
as
begin
declare @pageCount int;
select @pageCount=count(*) from Products
set @pageSize=CEILING(@pageCount/10.0);
declare @queryStr varchar(200);
if(@curPage>=1)
begin
if(@curPage<=@pageCount)
begin
set @queryStr='select top 10 ProductID,ProductName ,UnitPrice from Products where ProductID not in (
select top '+CAST(((@curPage-1)*10) AS varchar(200))+' ProductID from Products order by ProductID )'
end
end
exec(@queryStr)
end
在mysql中,如果去调用带输出参数的proc呢?? 这个proc,在mysql中应该如何调用啊? 谢谢!!
as
begin
declare @pageCount int;
select @pageCount=count(*) from Products
set @pageSize=CEILING(@pageCount/10.0);
declare @queryStr varchar(200);
if(@curPage>=1)
begin
if(@curPage<=@pageCount)
begin
set @queryStr='select top 10 ProductID,ProductName ,UnitPrice from Products where ProductID not in (
select top '+CAST(((@curPage-1)*10) AS varchar(200))+' ProductID from Products order by ProductID )'
end
end
exec(@queryStr)
end
在mysql中,如果去调用带输出参数的proc呢?? 这个proc,在mysql中应该如何调用啊? 谢谢!!
解决方案 »
- 模糊查询的速度优化
- sql server代码转换为mysql代码
- 求MySQL按某一类别过滤出前N行的方法
- 为难了,这种SQL语句应该如何写,求各种提示
- mysql的int的长度设置为4,还是11,使用mysqlygog的时候,自动设置为11.
- 单独的MYD类型文件怎么打开?
- 求解 PG sql一条
- 高分求时间比较sql语句
- 可不可以$result=mysql_query("select username from userinfo where userid='".$userid."'"
- mysql数据库半夜出现数据被修改,求救!!!
- 求助!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!简单问题,我是菜鸟
- MYSql的新手问题.谢谢
call sp_...(,,,);
select @queryStr;
select @outParam;其中, @outParam 是全局变量,不用定义的,拿来用就行
DELIMITER $$
CREATE PROCEDURE _PageQuery (
IN queryStr varchar(8000), -- 查询语句
IN beginRow int, -- 页起始的位置
IN pageSize int -- 每页行数
)
BEGIN set @sql = concat(queryStr, ' limit ?, ?');
set @row = beginRow;
set @size = pageSize;
PREPARE myStmt FROM @sql;
EXECUTE myStmt USING @row, @size;
DEALLOCATE PREPARE myStmt;END $$
DELIMITER ;