Почему возникает ошибка, когда передаешь кортеж из 1 элемента в sql запрос?

Уважаемые разработчики, возник вопрос, почему при передаче кортежа в SQL запрос генерируется исключение:
psycopg2.ProgrammingError: syntax error at or near ")"
LINE 7: ...roduct='T' and c.status='A' ORDER BY c.id in (194,) DESC,c.c...


Если в кортеже 2 и более ids то все замечательно, а так в конце пишет запятую, в результате чего запрос не проходит. Но как вы оборачиваете свои списки в кортеж для sql запроса?
  • Вопрос задан
  • 144 просмотра
Пригласить эксперта
Ответы на вопрос 1
Melkij
@Melkij
PostgreSQL DBA
Потому что синтаксически там запятой быть не может.
Если запятую ставите вы - сделайте так, чтобы её там не было.
Если запятую ставит ваше ORM или прочий библиотечный код - значит или вы неверное используете библиотеку или это баг этой библиотеки.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы