Выберите, где в MySql составной первичный ключ - PullRequest
0 голосов
/ 30 января 2020

Я работаю над облегченной персистентной библиотекой поверх шаблона JDB C, и мне нужно выбрать несколько записей на основе набора составных первичных ключей.

Можно ли выполнить следующий запрос и ожидать MySql использовать правильный индекс?

SELECT * 
FROM _my_table_ 
WHERE (pk_key_column1, pk_key_column2, ...) 
   IN ((pk_key_column1_value_1, pk_key_column2_value_1),
       (pk_key_column1_value_2, pk_key_column2_value_2), ...)

Если это не рекомендуемый подход в MySQL, есть ли обходные пути? Должен ли я создать PK с одним столбцом на основе объединения столбцов, составляющих составной PK?

...