Предыдущие ответы описывают, как использовать первый столбец каждого индекса. (в предложении where).
Я думаю, что также важно отметить, что второй столбец полезен, поскольку он потенциально увеличивает производительность запросов, которые включают второй столбец.
Следующий запрос будет выполнен с JUST поиском индекса по IDX_1, сохраняя ценные поиски в базовой таблице (поскольку val2 уже является частью индекса).
SELECT val2 from IndexTables where val1 = @someVal1
Аналогично, обратный индекс оптимизирует этот запрос:
SELECT val1 from IndexTables where val2 = @someVal2
Однако только один (неважно, какой) из двух индексов необходим для оптимизации следующего запроса:
SELECT val1, val2 from IndexTables where val1 = @someVal1 and val2 = @someVal2
Это показывает, что в зависимости от запросов, которые получает ваша таблица, может существовать законная причина для использования обоих индексов.