前提・実現したいこと
pythonもPostgreSQLも初心者です。
pythonを用いてPostgreSQLを操作しています。
PostgreSQLのcubeを用いてDBの座標間の距離を知りたいです。
それをpythonのdefで関数を作成して、DBの座標を変更して処理をしていけるような
関数を作成したいです。
DBにはcube(ARRAY[~]でデータを入れています。
発生している問題・エラーメッセージ
psycopg2.errors.UndefinedColumn: 列"values"は存在しません LINE 1: ...c2)) FROM spot_dis CROSS JOIN (SELECT cube(ARRAY [values...
該当のソースコード
def spot_distance(spotvalues): distance = ('SELECT id, name, c, c2, cube_distance(c,c2), rank() OVER (ORDER BY cube_distance(c,c2)) FROM spot_dis CROSS JOIN (' 'SELECT cube(ARRAY [spotvalues])) AS t(c2) ORDER BY cube_distance(c, c2);') cur.execute(distance) cou=0 for row in cur: if cou==1 or cou==9: return print((row[1])+(row[2])) cou=cou+1 else: cou=cou+1 spotvalues =(2, 2, 5, 6, 1, 5, 1, 5) spot_distance(spotvalues)
補足情報(FW/ツールのバージョンなど)
PycharmでpythonもPostgreSQLも操作しています。
あなたの回答
tips
プレビュー