Оба могут использовать индекс, если оптимизатору это "нравится". По какой-то причине он мог бы этого не делать, но порядок операндов AND
не должен быть такой причиной - на самом деле, я бы считал это ошибкой, если бы это было так.
Так как AND
коммутирует, нет разницы, будет ли условие на first_name
первым или вторым в операции AND
(и аналогом last_name
).
Вы можете попробовать сами. Просто сравните планы. Скорее всего, они идентичны.
И помните, SQL - это язык описания. Вы не говорите системе, что делать, а говорите, что хотите. Он сам разберется, как это сделать и как это сделать быстро. Таким образом, можно свободно переделывать запросы, особенно с такими мелочами, как изменение порядка операндов, когда это возможно.