dual mysql 获取序列_如何使用mysql 一次查询多个序列
postgresql使用的sql語句如下:selectt.seqValuefrom(selectnextval('seq_attr_id')seqValue,generate_series(1,5)seqNum)t;oracle使用的sql語句如下:selectseq_attr_id.nextvalfro...
postgresql使用的sql語句如下:
select t.seqValue from (select nextval('seq_attr_id') seqValue, generate_series(1, 5) seqNum )t;
oracle使用的sql語句如下:
select seq_attr_id.nextval from (select rownum from dual connect by rownum <=5);
其中seq_attr_id是序列名,如果要用mysql實現上面的功能sql語句該怎么寫?
后面通過各種查詢答案,使用了以下解決方案:
創建存儲過程,在過程中將序列存入一個臨時表中,之后調用儲存過程,查詢臨時表,語句如下:
drop PROCEDURE IF EXISTS showSeriesVal;
CREATE PROCEDURE showSeriesVal (IN seqSize INT,IN seqName VARCHAR(50))
BEGIN
DECLARE seqNumber int ;
drop TABLE IF EXISTS tmpSeriesLst;
CREATE TABLE tmpSeriesLst (
seqValue INTEGER
);
Set seqNumber=0 ;
WHILE seqNumber
SET seqNumber=seqNumber+1 ;
INSERT into tmpSeriesLst SELECT nextval(seqName);
END WHILE;
END;
call showSeriesVal(5,'seq_attr_id');
SELECT * FROM tmpSeriesLst;
展開
總結
以上是生活随笔為你收集整理的dual mysql 获取序列_如何使用mysql 一次查询多个序列的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 托马斯微积分是数学守旧派的代表作
- 下一篇: 微积分到底是什么?