NEWID (Transact-SQL)
適用対象: SQL Server Azure SQL データベース Azure SQL Managed Instance Azure Synapse Analytics Microsoft Fabric の SQL 分析エンドポイント Microsoft Fabric のウェアハウス
uniqueidentifier 型の一意の値を作成します。
構文
NEWID ( )
Note
Azure Synapse サーバーレス プールではサポートされません。
戻り値の型
uniqueidentifier
注釈
NEWID()
は RFC4122 に準拠しています。
例
A. NEWID 関数を変数と共に使用する
次の例では、NEWID()
を使用して、uniqueidentifier データ型として宣言された変数に値を割り当てます。 値、 uniqueidentifier 値をテストする前に、データ型の変数が出力されます。
-- Creating a local variable with DECLARE/SET syntax.
DECLARE @myid uniqueidentifier
SET @myid = NEWID()
PRINT 'Value of @myid is: '+ CONVERT(varchar(255), @myid)
結果セットは次のとおりです。
Value of @myid is: 6F9619FF-8B86-D011-B42D-00C04FC964FF
Note
NEWID によって返される値は、コンピューターごとに異なります。 この数値は、説明のためだけに示しています。
B. CREATE TABLE ステートメント内で NEWID を使用する
適用対象: SQL Server
次の例では、uniqueidentifier データ型を使用して cust
テーブルを作成し、NEWID を使用してテーブルに既定値を入力します。 NEWID()
の既定値が代入されると、新しい行と既存の行の CustomerID
列にそれぞれ一意な値が設定されます。
-- Creating a table using NEWID for uniqueidentifier data type.
CREATE TABLE cust
(
CustomerID uniqueidentifier NOT NULL
DEFAULT newid(),
Company VARCHAR(30) NOT NULL,
ContactName VARCHAR(60) NOT NULL,
Address VARCHAR(30) NOT NULL,
City VARCHAR(30) NOT NULL,
StateProvince VARCHAR(10) NULL,
PostalCode VARCHAR(10) NOT NULL,
CountryRegion VARCHAR(20) NOT NULL,
Telephone VARCHAR(15) NOT NULL,
Fax VARCHAR(15) NULL
);
GO
-- Inserting 5 rows into cust table.
INSERT cust
(Company, ContactName, Address, City, StateProvince,
PostalCode, CountryRegion, Telephone, Fax)
VALUES
('Wartian Herkku', 'Pirkko Koskitalo', 'Torikatu 38', 'Oulu', NULL,
'90110', 'Finland', '981-443655', '981-443655')
,('Wellington Importadora', 'Paula Parente', 'Rua do Mercado, 12', 'Resende', 'SP',
'08737-363', 'Brasil', '(14) 555-8122', '')
,('Cactus Comidas para Ilevar', 'Patricio Simpson', 'Cerrito 333', 'Buenos Aires', NULL,
'1010', 'Argentina', '(1) 135-5555', '(1) 135-4892')
,('Ernst Handel', 'Roland Mendel', 'Kirchgasse 6', 'Graz', NULL,
'8010', 'Austria', '7675-3425', '7675-3426')
,('Maison Dewey', 'Catherine Dewey', 'Rue Joseph-Bens 532', 'Bruxelles', NULL,
'B-1180', 'Belgium', '(02) 201 24 67', '(02) 201 24 68');
GO
C. uniqueidentifier と変数代入を使用する
次の例では、@myid
という名前の変数を uniqueidentifier データ型の変数として宣言します。 この変数に、SET
ステートメントを使用して値を代入します。
DECLARE @myid uniqueidentifier ;
SET @myid = 'A972C577-DFB0-064E-1189-0154C99310DAAC12';
SELECT @myid;
GO
D. NEWID() 関数を使用してランダムなデータのクエリを実行する
次の例では、NEWID()
関数を使って Production.Product
テーブルのランダムなレコードのクエリを実行します。 より多くのレコードをランダムに照会するには、 TOP
値を増やします。
SELECT TOP 1 ProductID, Name, ProductNumber
FROM Production.Product
ORDER BY NEWID()
GO
参照
NEWSEQUENTIALID (Transact-SQL)
ALTER TABLE (Transact-SQL)
CAST および CONVERT (Transact-SQL)
CREATE TABLE (Transact-SQL)
データ型 (Transact-SQL)
システム関数 (Transact-SQL)
uniqueidentifier (Transact-SQL)
シーケンス番号