van2houten4さんの投稿一覧

助け合いフォーラムの投稿
2025/04/07 コメント
現在の時刻を取得するSQL文について
postgreSQLの日本語公式ドキュメント側で、current_timeの説明が[現在の時刻。]となっていたので、問題文にもトランザクション云々について記載していなかった、でいったん解決とします。。 より適切な選択肢を正当とするについて、AWSの試験などの「最も適切なサービス」を選んで回答については、機能的に差異があるうえで最も適切を選ぶという意味で納得はいくのですが、この問題についてはコマンドのレスポンスとしてはっきりと時刻を出してしまっていて、トランザクションというのを無視すればちゃんと題意を満たしているので、「より適切な選択肢」系の問題としては不適な感じはします。まあそういう問題だと理解しろ、と言われればそれまでなのでこれ以上の議論は不要なんですが。(過去のフォーラムもそんな感じになっていますし。。。)
2025/04/07 コメント
現在の時刻を取得するSQL文について
コメントありがとうございます。 postgreSQLの日本語公式ドキュメント、表9.33 日付/時刻関数演算子によると、current_timeの説明部分が[現在の時刻。]のみになっているので、ここから問題を作っていると仮定すると、適当なものはcurrent_timeになりそうだな、と思いました。 ただ、current_timestampなどの説明は[現在の日付と時刻(現在のトランザクションの開始時)。]となっており、トランザクション開始時で固定されることを明記しているものもあるので、公式ドキュメント側の説明不足もありそうです。 表9.33にはトランザクションによらずtime型を返してくれそうなSQL文がないので、適当な解答はやはり存在しないのかなと思います。 あまり納得はいきませんでしたが、公式ドキュメントよりcurrent_timeが正答、でいったんオチをつけたいと思います。。
2025/04/04 投稿
現在の時刻を取得するSQL文について

問題ID:35230

現在の時刻を取得するSQL文はどれか。

選択肢
①SELECT current_database();
②SELECT now();
③SELECT current_date;
④SELECT current_timestamp;
⑤SELECT current_time;

回答としては⑤となっていますが、解説では現在時刻ではなく「現在のトランザクションの開始時刻」となっているので、適当ではない認識です。
「現在のトランザクション開始時刻」を出力して正解になるのであれば、②、④も日付と合わせて時刻も出力しているので、こちらも正解になると考えられます。(問題の中では時刻「のみ」とは言及していない。)
ただ、題意を純粋に読み取れば、トランザクションにかかわらず現在の時刻を取得するSQL文を求められていると読み取れるので、上記の中には正解が存在しないのではないでしょうか。

解説を読む限り、トランザクションにかかわらず現在の時刻を出力してくれるSQL文は以下となる認識です。
SELECT clock_timestamp();

合格体験記の投稿
投稿がありません