OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

SQL(Sequence)の問題が分かりません。

  • すぐに回答を!
  • 質問No.7802176
  • 閲覧数135
  • ありがとう数1
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 0% (0/26)

こんにちは。
SQLの学習をしているのですが、Sequenceの問題で解き方が分からないため質問させて頂きます。
問題は以下となります。

A sequence was created with the DDL statement shown below:
CREATE SEQUENCE my_seq START WITH 5 INCREMENT BY 5 CACHE 5
User1 successfully executes the following statements in Connection1:
VALUES NEXT VALUE FOR my_seq INTO :con1hvar
VALUES NEXT VALUE FOR my_seq INTO :con1hvar
User2 successfully executes the following statement in Connection2:
VALUES NEXT VALUE FOR my_seq INTO :con2hvar
After User1 & User2 are finished, User3 executes the following statement in Connection3:
SELECT NEXT VALUE FOR my_seq FROM sysibm.sysdummy1
Which value will be returned by the query?
A. 20
B. 25
C. 50
D. 55
Answer: D

上記の解き方をご存じの方はご回答お願い致します。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル12

ベストアンサー率 35% (313/889)

CACHE 5が影響しています。

User1が
VALUES NEXT VALUE FOR my_seq INTO :con1hvar(1回目)
をしたときに、5,10,15,20,25の5個をあらかじめ確保して、5を返します。
(START WITH 5 INCREMENT BY 5 CACHE 5なので)
VALUES NEXT VALUE FOR my_seq INTO :con1hvar(2回目)
でも確保された5個から次の番号を受け取り、10を返します。
User2が
VALUES NEXT VALUE FOR my_seq INTO :con1hvar
をしたときに、すでに確保された次の30,35,40,45,50の5個をあらかじめ確保し、30が返されます。
User3が、
SELECT NEXT VALUE FOR my_seq FROM sysibm.sysdummy1
をしたときは、
次の55がかえされるということになります。

## 説明でお分かりかと思いますが、欠番が生じたり、
## ややこしいことがおきたりしますので、
## CACHEは指定するな、と私は普段言っています。
## (個人的意見)
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.1
レベル13

ベストアンサー率 47% (436/921)

こんにちは。 B. 25 開始が5から、 間隔が5単位、 すでに4回発行された。 なので、次は25です。 ...続きを読む
こんにちは。

B. 25

開始が5から、
間隔が5単位、
すでに4回発行された。

なので、次は25です。
補足コメント
p_nt

お礼率 0% (0/26)

ご回答ありがとうございます。
解答は「D:55」となっているのですが、解き方ご存知でしょうか?
投稿日時 - 2012-11-17 21:17:32


このQ&Aで解決しましたか?
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ