Я просто изучаю SQL и извиняюсь, если это повторяется, но я искал и не нашел ответа. Запись на python с помощью PostgreSQL DB.Проверка столбца таблицы PostgreSQL для значения и возврата boolean
Я хочу проверить таблицу в моей базе данных, чтобы увидеть, содержит ли столбец «Порт» определенное местоположение. Я могу сделать это в интерактивном режиме, но он возвращает результат таблицы, например:
select exists(select 1 from ref_locations where "Port"='ORAN');
возвращается:
exists
-------
t
(1 row)
... Я хочу, чтобы возвращать только логическое значение, и я хочу сделать это в моем скрипте python. В моем сценарии python у меня есть:
exists = False
cnx.execute("""select exists(select 1 from ref_locations where "Port"='BAKU');""")
print "Exists: ",exists
но существует всегда с False. Любая помощь очень ценится.
'печать "Exists:", exists' ваш существует переменная не изменяется в результате запрос. Вам нужно получить результат запроса и присвоить его переменной. Вероятно, в вашем курсоре есть какая-то функция, например 'exists = cnx.get_result();' – wildplasser
Спасибо! Отличные ответы. И, по крайней мере, в процессе моей работы над этим, я понял, что, поскольку я тестирую много слов для их существования в таблице «Порт», мне действительно быстрее читать таблицу в таблице хэша или панды, а не запрашивать базу данных каждый раз. – Callie