3

次の PostgreSQL データベース テーブルがあります。

TABLE session_monitor
(
    id int,
    customer_name varchar(150)
)

次のコードを実行しているとき:

seq = pg_cur.execute("SELECT id ,customer_name from session_monitor")
for id, customer_name in seq:
    print(id)
    print(customer_name)

それは正常に動作しています。

でもやってみると

pg_cur.execute("SELECT max(id) as max_id from session_monitor")
for max_id in seq:
    print(max_id)

私は数字を取得していませんが、むしろ:Row(max_id= 5)

問題を解決する回避策を試しました:

seq = pg_cur.execute("SELECT max(id) as max_id,1 as one from session_monitor")
for max_id, one in seq:
    print(max_id)

しかし、このように使用するのはちょっと不自由なようです。

ここで何が間違っていますか?2番目のケースでクエリ結果を反復する別の方法はありますか?

4

1 に答える 1