При написании SQL-запроса, такого как
SELECT ID, NAME FROM USER_TABLE WHERE ID IN (1, 2, 10, 14, 15, ..., n)
, парсер просто перефразирует это в это?
SELECT ID, NAME FROM USER_TABLE WHERE ID = 1
OR ID = 2
OR ID = 10
OR ID = 14
OR ID = 15
...
OR ID = n
Или он делает что-то еще в фоновом режиме для эффективности?Хотя это кошмар, когда я пишу от руки, и я бы никогда не стал выступать за это, есть ли теоретическая выгода в производительности или удар по использованию IN, а не ряда условий ИЛИ, подобных этому?