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

公開日: : 最終更新日:2013/12/26 SQL Server , , , ,

ランダムにユニーク(一意)な値(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)などを生成するのに都合が良いです。

スポンサーリンク
スポンサーリンク
  • このエントリーをはてなブックマークに追加
  • 13 follow us in feedly

関連記事

ALTER TABLEのALTER COLUMNで「列 ‘xxxxx’ に依存しています」とエラーになる

ALTER COLUMNで「列 'xxxxx' に依存しています」とエラー SQLServerでカ

記事を読む

SQLServerで省略可能な引数を持ったストアドプロシージャを作る

SQLServerで省略可能な引数を持ったストアドプロシージャーを作ります。 省略可能にするに

記事を読む

SQLServerでSQLを使ってテーブルのカラム名(項目名)を取得する

SQLでテーブルのカラム名(項目名)を取得 Oracleでは とわりと簡単に取得できるの

記事を読む

SQLServerのバージョン番号を取得する方法

SQLServerのバージョン番号を取得する SQLServerのバージョン番号は「@@VERSI

記事を読む

SQL Server2008で導入された[date/time/datetime2/datetimeoffset]型

SQL Server2008では新しい日付/時刻データ型 date/time/datetime2/

記事を読む

SQLServer上にあるストアドプロシージャーの更新日時を取得する。

ストアドプロシージャーの更新日時を取得する ここ数日間で変更されたSQLServer上にあるストア

記事を読む

SQL Server-登録されているストアドプロシジャーの一覧を取得する

データベースに登録されているストアドプロシジャーの 一覧を取得します。

記事を読む

SQLサーバ

連番中で 「歯抜け」の番号を見つけ出すSQL

テーブル内の連番の歯抜け番号を探す よくある処理でテーブルに設定されている連番の中で 「歯抜け」

記事を読む

SQLServerでホスト名を取得する

SQLServerが動作しているホスト(サーバ)名取得 SQLServerでSQLServerが動

記事を読む

SQLサーバ

1行のINSERT文で複数のデータを挿入する方法

1行のInsertで複数件のデータ挿入 これまでは1行INSERT文では1行のデータしか挿入できま

記事を読む

DEFAULT制約付きのカラムの属性を変更する

DEFAULT制約付きのカラムの属性を変更する SQLServerで

SQL Server-ストアドプロシジャーのソースを表示する2

過去の投稿「SQL Server-ストアドプロシジャーのソースを表示す

ALTER TABLEのALTER COLUMNで「列 ‘xxxxx’ に依存しています」とエラーになる

ALTER COLUMNで「列 'xxxxx' に依存しています」とエ

SQLサーバ
DATETIMEデータ型のミリ秒丸め現象

DATETIMEデータ型のミリ秒には丸めがあります SQLSer

sp_columns – SQL Serverでカラムの型を取得する

SQL Serverで定義されているテーブルのカラムの型を取得する

→もっと見る



PAGE TOP ↑