ORACLE機能 ORACLE関数

[ORACLE関数] ハッシュ値を取得する(ORA_HASH)

投稿日:

オラクルでハッシュ値を取得するには、ORA_HASH関数を使用します。

構文

(ORA_HASH構文)
ORA_HASH(文字列, バケット, シード)
文字列ハッシュ値へ変換する文字列
バケットハッシュ値へ変換するキー
0~4294967295を指定可。
デフォルトは4294967295
シードハッシュ値へ変換するキー
0~4294967295を指定可。
デフォルトは0

バケット、シードはハッシュ値へ変換時に使用するキーです。

サンプル

例)'ABC'をバケット⇒1234、シード⇒1でハッシュ値に変換する

SQL*Plus
SQL> SELECT ORA_HASH('ABC', 1234, 1) FROM dual; ORA_HASH('ABC',1234,1) ---------------------- 642

例)'ABC'をバケット⇒1234、シード⇒0でハッシュ値に変換する

SQL*Plus
SQL> SELECT ORA_HASH('ABC', 1234, 0) FROM dual; ORA_HASH('ABC',1234,0) ---------------------- 125

例)'ABC'をバケット⇒1234567、シード⇒1でハッシュ値に変換する

SQL*Plus
SQL> SELECT ORA_HASH('ABC', 1234567, 1) FROM dual; ORA_HASH('ABC',1234567,1) ------------------------- 677946

解説

  • バケット、シードが異なると異なるハッシュ値になります。
  • ハッシュ値は、不可逆なコードなので暗号化した値として使用されます。

スポンサーリンク

スポンサーリンク

-ORACLE機能, ORACLE関数

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

ORACLE

[ORACLE関数] TIMESTAMP型から年月日等の値のみを取得する(EXTRACT)

TIMESTAMP型から年月日等の値のみを取得するには、EXTRACT関数を使用します。 サンプル 例)systimes ...
ORACLE

[PL/SQL] 連番を採番してINSERTするサンプル

既存データを元に連番を採番してINSERTするサンプルです。 サンプル 例)CODE, SEQが主キーのテーブルで、SE ...
ORACLE

[ORACLE] 表領域の自動拡張をオフに変更する

表領域の自動拡張をオフに変更するサンプルです。 自動拡張の設定はデータファイル単位に行うため、データファイルの設定を変更 ...
ORACLE

[ORACLE] ORAエラー番号からメッセージを確認する(sqlerrm)

ORAエラー番号からメッセージを確認したい場合は、sqlerrmを使用します。 サンプル 例)ora-00942のメッセ ...
ORACLE

[ORACLE関数] ASCIIコードを文字に変換する(CHR)

ASCIIコードを文字に変換するには、CHR関数を使用します。 構文 (CHR関数構文) CHR(ASCIIコード) サ ...

スポンサーリンク