SQL Server

SQLでランダムにユニーク(一意)な値(ID)を取得する

投稿日:2013/03/12 更新日:

ランダムにユニーク(一意)な値(ID)を取得する

SQLServerでテーブル内でユニークキーをランダム生成して設定したい場合に
NEWID()関数を利用するとユニーク(一意)な値(ID)を取得することができます。

NEWID()でランダムにユニーク(一意)な値(ID)を取得

NEWID()を呼び出してみます。

NEWID()の戻り値はuniqueidentifier型なのでkey_infoはuniqueidentifierで
宣言されている必要があります。

INT型でランダムにユニーク(一意)な値(ID)を取得

NEWID()関数は「UNIQUEIDENTIFIER」型なので、
どうしてもINT型にしたい場合はCONVERT()関数で
INT型にCONVERTします。

実行結果は

key_info name age
-1494990381 太郎さん 10
1138790860 二郎さん 20
58084516 三郎さん 30

になります。

ランダムにユニークインデックス(unique index)などを生成するのに都合が良いです。

当サイトのおすすめ記事

レンタルサーバー 1

当サイトは約5年間、さくらのレンタルサーバで運用させて頂きました。 何かトラブルがあったわけではないのですが、WordPressの表示速度を速くしたくてSSD搭載のレンタルサーバーで運用してみることに ...

プログラミング 2

SQLでIFを使わずに条件分岐する SQLでIFを書けばWHERE句の内容を変えて検索できますが、条件ごとに同じようなSQLを 複数回書くのは面倒なので、1行で分岐できないかと言う事でSQLを作って見 ...

SQLServer 3

SQLServerで発生するエラーコードをSQLで取得する SQLServerで発生したエラーコードの内容を メッセージが定義されているテーブルから取得します。 エラーコードを取得するSQL SQLs ...

4

SQLServerでテーブル型を戻り値とする関数を作る SQLServerではINT型やVARCHAR型などを返す関数と同様に ユーザー定義テーブル型を戻り値とする関数を作成できます。 テーブル型を戻 ...

5

アフィリエイトで即効成果を出す アフィリエイトで成果を出す、なかなか難しいですよね。 サイトをいくつも立ち上げてすでにコツをつかんでいる人なら チョチョイっとやっていけるんでしょうけど。 でも実際はこ ...

-SQL Server
-, , , ,

Copyright© ソフトウェア開発日記 , 2017 AllRights Reserved.