@beduin01

Есть ли разница между = и IN ( ... )?

В коде есть фрагмент:
if id is not None:
            if type(id) is list:
                q = q.filter(Model.id.in_(id))
            else:
                q = q.filter(Model.id == id)


Я вот думаю, а нужно ли второе условие? Может можно выборку получать просто через:
SELECT * FROM TableName WHERE ID IN ( ... )
Просто если в скобках будет одно значение, то оно сработает так же как:
SELECT * FROM TableName WHERE ID IN (42)
  • Вопрос задан
  • 70 просмотров
Решения вопроса 1
@Ghost_Russia
Ещё не определился...
Такой вопрос был на stackoverflow. Там пришли к выводу что разницы никакой нет.
EXPLAIN запроса в обоих случаях одинаковый

https://stackoverflow.com/questions/9926433/mysql-...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы