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

関連記事

CASE WHEN を使って条件ごとの件数を取得する

CASE WHEN を使って条件ごとの件数を取得する あるテーブルに状態を表すフラグを持たせること

記事を読む

0で埋めで固定長のデータにする

0で埋めで固定長のデータにする データべース内のデータを0埋めして取得します。 RIGHT(

記事を読む

SQL Server-SQLでテーブル仕様書になるものネタを取ってみる

SQLでテーブル仕様書になるものネタを取ってみます。 これを実行すると [crayo

記事を読む

再帰SQLで最大再帰数の指定

再帰SQLを実行すると最大再帰数に達してエラー 先日作成した日付を管理しているテーブルから共通テー

記事を読む

SQLで改行コードを含む項目を取得する

SQLで改行コードを含む項目を検索する Microsoft SQL Server Managemn

記事を読む

システム日付を取得する

様々な関数でコンピューターのシステム日付を取得する SQLServerのインスタンスを実行している

記事を読む

SQLServer

SQLServerで累積値(累積比)を求める

SQLServerで累積値(累積比)を求める SQLServerで累積値(累積比)を求めるには

記事を読む

SQLで存在しない行を生成し固定行数で処理したい時に役立つ方法

帳票データなどで登録されているデータ数に左右されず、 固定行数でデータを取得したい場合があります。

記事を読む

TOP句で変数を使ってSQLを1行にする

TOP句で変数を使ってSQLを1行にする TOP句を使って複雑なSQLを簡単にします。 SE

記事を読む

列は既にデフォルトにバインドされています。

テーブルのカラムの属性変更でデフォルト値を変更する テーブルのカラムの属性変更でデフォルト値を変更

記事を読む

SQL_VARIANT_PROPERTYを使ってカラムの基本データ型を取得する

カラムの基本データ型取得 SQLサーバーで定義されているテーブルのカ

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

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

SQLServer
テーブルに設定されているインデックスをSQLで検索する

テーブルに設定されているインデックスをSQLで検索 SQLSer

SQL Server-SQLでテーブル仕様書になるものネタを取ってみる

SQLでテーブル仕様書になるものネタを取ってみます。 こ

SQLで棒グラフの簡易版を出力する

SQLで棒グラフの簡易版出力 SQLで棒グラフの簡易版を出力してみま

→もっと見る



PAGE TOP ↑