34,594
社区成员
发帖
与我相关
我的任务
分享
DECLARE @newid varchar(36) = NEWID()
DECLARE @id VARCHAR(32);
select @id=SUBSTRING(@newid,1,8)+SUBSTRING(@newid,10,4)+SUBSTRING(@newid,15,4)+ SUBSTRING(@newid,20,4)+SUBSTRING(@newid,25,12)
USE tempdb
GO
IF OBJECT_ID('dbo.A') IS NOT NULL
DROP TABLE dbo.A
GO
IF OBJECT_ID('dbo.B') IS NOT NULL
DROP TABLE dbo.B
GO
CREATE TABLE dbo.A(aId INT IDENTITY(1,1),c1 INT,c2 NVARCHAR(10))
CREATE TABLE dbo.B(bId UNIQUEIDENTIFIER,c1 INT,c2 NVARCHAR(10))
GO
INSERT INTO dbo.A(c1,c2) VALUES(1,'a'),(2,'b')
SELECT * FROM dbo.A
/*
aId c1 c2
1 1 a
2 2 b
*/
INSERT INTO dbo.B(bId,c1,c2)
SELECT NEWID(),c1,c2 FROM dbo.A
SELECT * FROM dbo.B
/*
bId c1 c2
7047A8F7-DCAF-49FB-BFFD-99B36B4A3DD3 1 a
3353312D-E353-4258-B6FD-E1F26F98D896 2 b
*/
INSERT INTO B(字段1,字段2,UUID)SELECT TOP 1 字段1,字段2,@id FROM A