rink_rewさんの投稿一覧

助け合いフォーラムの投稿
2024/04/15 コメント
選択肢の説明の意味がよくわかりません
良いと思います。 データファイルAに存在するエクステントと、データファイルBに存在するエクステントの2つのエクステントから構成される1つのセグメントが存在し得るということです。(本問題の参考の[エクステント]の説明にある図の「表Bのエクステント」が、そのケースを示しています)
2024/04/15 返信
選択肢の説明の意味がよくわかりません

・セグメントは連続した複数のエクステントで構成される
エクステントは連続した領域に確保されるとは限りません。

この説明文の言いたいことは、「セグメントを構成するエクステントは、連続した領域に確保されるとは限らない」、ということですよね。
※「参考」の以下記述の部分

表領域に複数のデータファイルが割り当てられている場合は、セグメントを構成する個々のエクステントが異なるデータファイル上に格納される場合もあります。つまり、1つのセグメントが複数のデータファイルにまたがる場合もあります。

ですが、この問題の解説の文章だと、若干モヤっとしますね。少し表現を変えてもらえると良さそうですが...。

2024/03/21 返信
解説文について

recovery.conf は PostgreSQL 12で廃止され、postgresql.conf に統合されたようです。
https://www.postgresql.jp/document/14/html/recovery-config.html

本問題の解説にも以下の記載がありました。

PostgreSQL 11 以前のバージョンでは、リカバリに関する設定を「recovery.conf」というファイルを作成して記述していましたが、これらの設定は PostgreSQL 12 から「postgresql.conf」ファイルに統合されました。

OSS-DB Silver Ver.3.0 は PostgreSQL 12 以上を基準としているので、postgresql.conf を用いるという説明は妥当かなと思います。
https://oss-db.jp/outline/silver

2024/03/12 返信
GENERATED ALWAYS AS IDENTITY が指定された列の値をUPDATEしたときの挙動について

この問題の解説に記載のとおり、GENERATED ALWAYS AS IDENTITYが指定されているid列に明示的に値を指定したUPDATEやINSERTはエラーになるので、name=Suzukiのレコードのid列は変更されませんし(3番目のSQL)、id列に3を指定したレコードも追加されない(4番目のSQL)、結果、1番目のSQLと2番目のSQLで挿入された2レコードだけがそのまま残る、ということではないですか?

質問の意図が理解できていなかったらすみません。

2024/03/12 返信
DESCの後の数字について

下記のDESCの後に表示されている「1」は何をあらわしているのでしょうか。

これは、ORDER BY 句における項目の指定方法で、列名や列別名以外に、SELECT句で指定した項目の順番を数値で指定することができるというものです。
DESCの後の数字というか、DESCはその前の数字にかかっています。

 SELECT employee_name, salary, grade FROM employees, grade  
 WHERE salary = (SELECT MAX(salary) FROM employees)
 AND salary BETWEEN low AND high
 ORDER BY 3, 2 DESC, 1

この例だと、まず最初に「3」(grade)で昇順にソート、次に「2」(salary)で降順にソート、最後に「1」(employee_name)で昇順にソート、という動きになります。
※ORDER BY句のデフォルトが昇順で、ASCは省略可能、降順にしたい場合はDESCを指定する。

ORDER BY句に着目した別の問題(26443)に、以下の説明がありました。

ORDER BY句の項目には「列名」の他、以下を指定できます。どれも重要です。
・列別名(*WHERE句では指定不可)
・算術式
・SELECT句に指定されている項目の順番(数値)

ASCとDESCは昇順/降順を指定するキーワードです。ASCで昇順(小さい順)、DESCで降順(大きい順)にソートします。省略するとASCが指定されたものとみなされます。
ORDER BY句では複数の項目を指定できますが、ASC/DESCも項目ごとに指定できます。
合格体験記の投稿
投稿がありません