要一条sql语句查出来比较麻烦,变通了一下
1、把这个存储过程增加到你的数据库中(想必你应该了解存储过程)
delimiter //
create function getId() returns int(4)
begin
set @id=@id+1
return @id
end
//
2、在执行你的sql语句前设置一下id,
set @id=0
3、你的sql语句:
select getId(),column1,column2 from tb
原表T1不动,T2是目标表创建表2的时候设定id字段,自动从1开始,每次增加(步长)为1.
CREATE TABLE T2(COL1 VARCHAR(20) NOT NULL,..,COLN VARCHAR2(20),ID INT IDENTITY(1,1) NOT NULL)
或者修改表2,增加id字段也可以
ALTER TABLE T2 ADD ID INT IDENTITY(1,1) NOT NULL
执行:
INSERT INTO T2(COL1,COL2,....COLN) --无需指定ID字段,自动赋予值的
SELECT COL1,COL2,....COLN
FROM T1--原表
SELECT * FROM T2
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)