MySQL SELECT IN с одним значением - PullRequest
2 голосов
/ 29 марта 2011

В MySQL сделать это очень плохо:

SELECT ... WHERE foo IN ('bar')

вместо этого ...

SELECT ... WHERE foo = 'bar'

... учитывая, что это динамически генерируемое предложение WHERE также, вероятно, будет

SELECT ... WHERE foo IN ('bar', 'baz', 'buz')

Ответы [ 3 ]

2 голосов
/ 29 марта 2011

Насколько я понимаю, это будет преобразовано в то же самое перед исполнением.В любом случае, я бы подал это под «действительно очень низким уровнем беспокойства».

1 голос
/ 29 марта 2011

Я не уверен, что беспокоюсь об этом.

Однако, поскольку он генерируется динамически, вы всегда можете проверить, сколько значений у вас есть, прежде чем создавать предложение where.

0 голосов
/ 29 марта 2011

Гораздо лучше использовать для оптимизации SQL-запросов и рекомендаций:

WHERE foo = 'bar' OR foo = 'baz'

чем:

WHERE foo IN ('bar', 'baz')

Привет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...