sql如何将新产生的guid和一条其他表的数据插入当前表

2024-12-26 09:31:30
推荐回答(4个)
回答1:

sqlserver2005+以上案例:

--newid()  直接当及一列查询出来过滤到A表即可!

Insert into B表(字段1....)
select NEWID()[guid],* from A表 where 过滤条件


如有问题可以追问,我当及时回答.

希望能帮到你!

回答2:

两种方式

 

第一种

建表

create table b (id int,name varchar(10),price int)
insert into b values (1,'aa',100)
insert into b values (2,'bb',90)
insert into b values (3,'cc',101)


create table a (id varchar(64) default newid(),name varchar(10)) --注意a表的建表语句有默认值

先要将b表大于等于100的数据插入a中

insert into a(name) select name from b where price>=100

 

 

另一种方式,b表数据不变

c表

create table c (id varchar(64),name varchar(10))--此时id无默认值

执行

insert into c  select newid(),name from b where price>=100

回答3:

有三种办法:
sqlserver
insert into 表名 (字段名) values (newid())

oracle
insert into 表名(字段名) values (sys_guid())

mysql
insert into 表名(字段名) values(UUID())

你按你是什么数据库挑着用即可。

回答4:

insert B(col1,col2) select newid(),col3 from A where xxx