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實(shí)現(xiàn)上面的功能sql語句該怎么寫?
后面通過各種查詢答案,使用了以下解決方案:
創(chuàng)建存儲(chǔ)過程,在過程中將序列存入一個(gè)臨時(shí)表中,之后調(diào)用儲(chǔ)存過程,查詢臨時(shí)表,語句如下:
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;
展開
總結(jié)
以上是生活随笔為你收集整理的dual mysql 获取序列_如何使用mysql 一次查询多个序列的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 托马斯微积分是数学守旧派的代表作
- 下一篇: 微积分到底是什么?