У меня есть простая таблица, которая отслеживает видеофайл и номер program_id, например:
|---------------------|------------------|------------------|
| id | filename | program_id |
|---------------------|------------------|------------------|
| 1 | vid1.mp4 | 1001 |
|---------------------|------------------|------------------|
| 2 | vid2.mp4 | 1010 |
|---------------------|------------------|------------------|
| 3 | vid3.mp4 | 1005 |
|---------------------|------------------|------------------|
Что я хотел бы сделать, это получить самый низкий идентификатор программы, затем go и вытащить следующий НИЗКИЙ идентификатор программы из базы данных. ID_программы не является линейным, потому что я вставляю и удаляю видео между ними, чтобы зацикленный код мог вытянуть следующее низшее видео в случае добавления нового. Итак, на первом проходе я хотел бы ожидать 1001, следующий проход 1005, затем следующий проход 1010.
Сейчас у меня успешно просто есть это, где я могу получить самый низкий идентификатор_программы в python:
while true:
sql = "SELECT * FROM videos WHERE program_id = ( SELECT MIN(program_id) FROM video)"
cnx.execute (sql)
result = cnx.fetchall()
for qq in result:
id = qq[0]
filename = qq[1]
program_id = qq[3]
playVideo(filename)
есть ли способ использовать l oop вокруг и сделать другой запрос, используя последний programn_id и выбрать следующий самый низкий из него?