#mysql #python-3.x
#mysql #python-3.x
Вопрос:
Я хочу выбрать строку в таблице mysql с помощью 3 условий, но когда я запускаю код, условия селектора работают некорректно, есть ли какое-либо ограничение на количество условий для селекторов mysql? в этом случае, когда я запускаю следующий код, результат правильный, он показывает строки, которые были вставлены за последние 90 минут, а post_id не равен null :
import mysql.connector
lucas_db = mysql.connector.connect(
host='localhost',
user="root",
password="zzzzzzzzzzzzzzz",
database="Lucas_database")
mycursor_tv = lucas_db.cursor()
mycursor_tv.execute(
"SELECT Release_Name FROM Lucas_t_db WHERE Published_Time > SUBDATE( CURRENT_TIME, INTERVAL 90 MINUTE) AND Post_ID IS NOT NULL")
myresult_tv = mycursor_tv.fetchall()
print(">>>> Last 30 Minute Release: ", len(myresult_tv))
myresult_tv = [a[0] for a in myresult_tv]
print(myresult_tv)
но когда я меняю селектор, подобный следующим кодам, post_id is not null
условие не работает :
"SELECT Release_Name FROM Lucas_t_db WHERE Published_Time > SUBDATE( CURRENT_TIME, INTERVAL 90 MINUTE) AND Post_ID IS NOT NULL AND Post_status IS NULL
я просто добавляю AND Post_status IS NULL
после Post_ID IS NOT NULL
и делаю все неправильно. он должен показывать строки, которые были вставлены за последние 90 минут, и идентификатор записи не равен нулю, а статус записи равен нулю
(извините за мою плохую английскую грамматику :))
Комментарии:
1. Вы имели в виду не указывать конечную строку
")
из строки запроса во втором блоке кода?2. Выдает ли запрос ошибку? Или он не показывает нужные вам результаты?