SQL server
에서 1을 더 선택할 수 있는지 알고 싶습니다. uniqueidentifier
.두 개 이상의 uniqueidentifier를 선택하는 방법은 무엇입니까?
1 : SELECT NEWID()
을 선택하면 1 개의 결과가 나타납니다. 나는 50 개 결과
편집 :
나는 결과가 1 그리드에 반환하고 싶은, 그래서 난 한 번에 모두 복사 할 수 있습니다. 1을 1로 복사하여 붙여 넣지 마십시오.
SQL server
에서 1을 더 선택할 수 있는지 알고 싶습니다. uniqueidentifier
.두 개 이상의 uniqueidentifier를 선택하는 방법은 무엇입니까?
1 : SELECT NEWID()
을 선택하면 1 개의 결과가 나타납니다. 나는 50 개 결과
편집 :
나는 결과가 1 그리드에 반환하고 싶은, 그래서 난 한 번에 모두 복사 할 수 있습니다. 1을 1로 복사하여 붙여 넣지 마십시오.
SQL Server Management Studio에서이 작업을 수행하려고합니까?
시도 :
SELECT NEWID()
GO 50
이 배치
업데이트 실행
확인을 - 어떻게에 대한 다음? NEWID 때마다 무작위이기 때문에 당신에 의해 주문을하지 않아도
SELECT TOP 50 NEWID() FROM master.dbo.sysobjects WHERE xtype = 'S'
다음 master.dbo.sysobjects
테이블을 가정
SELECT NEWID()
FROM master..spt_values
WHERE name IS NULL
AND number < 50
-- Static solution: only 5 GUID values
SELECT NEWID()
FROM (VALUES(1), (2), (3), (4), (5)) AS Numbers(Number)
-- Dynamic solution
DECLARE @Num INT;
SET @Num=5;
SELECT TOP(@Num)
NEWID()
FROM sys.objects o;
-- Another dynamic solution
--SET STATISTICS IO ON;
--GO
DECLARE @Num INT;
SET @Num=567;
WITH N10(Number)
AS (
SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL
SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9 UNION ALL SELECT 10
), N100(Number)
AS (
SELECT (a.Number-1)*10+b.Number
FROM N10 AS a CROSS JOIN N10 AS b
), N1000(Number)
AS (
SELECT (a.Number-1)*100+b.Number
FROM N100 AS a CROSS JOIN N100 AS b
)
SELECT TOP(@Num)
NEWID() AS [GUID]
FROM N1000;
거기에 적어도 50 시스템 개체가 있습니다.
+1 정말 영리합니다! 나는 그것을 좋아한다 - 나의 두 번째 접근보다 훨씬 간단하다 ;-) –
왜'WHERE' 절이 ?? –
@RemusRusanu - 비 시스템 오브젝트가 얼마나 많은지는 확신 할 수 없으므로 최소한 50 개의 레코드가 있는지 확인하고 싶었지만 필요하지는 않습니다. – LittleBobbyTables
--run these queries independently
CREATE TABLE #temp1 (ID UniqueIdentifier)
GO
INSERT INTO #temp1
SELECT NewID() AS ID
GO 50
SELECT *
FROM #temp1
GO
DROP TABLE #temp1
GO
@marc_s 대답 기준 –
이렇게하면 좋겠지 만 결과를 선택하여 1 그리드로 반환 할 수 있습니다. 나는 이들 모두를 엑셀 시트에 복사하고 싶다. 1을 1 씩 복사하고 싶지 않습니다. – Willem
감사합니다. =) – Willem