Есть таблица сотрудников: номер, зарплата, категории.
Категорий может быть сразу несколько у одного сотрудника поэтому они выведены в отдельную таблицу категории: номер_сотрудника, номера_категории. Но как сделать индекс на зарплату и категории. Поскольку они находятся в разных таблицах.
Можно дополнить таблицу категорий столбцом зарплата, но идет дублирование данных и по ощущениям это не правильно.
Столбец категории может быть перечислением номеров через запятую, но тут индекс тоже не сделать.
А почему не сделать три таблицы? Одна - сотрудники (номер, зар. плата), вторая - категории, третья - связывающая таблица (IDсотрудника, IDкатегории). И нужные выборки реализовывать исходя из этой таблицы.
необходимо добавить в таблицу1 - дату_начало_работы_сотрудика и потом сортировать по убыванию всех сотрудников по заданной категории
если добавить столбец число в таблицу1 составной индекс не будет работать и на больших данных будет не совсем быстро.
а если добавить в таблицу3 то будет хорошая скорость за счет индекса, но получается вся таблица в итоге расползается на много маленьких. или иначе никак, если хочется делать быстрые выборки данных по индексам?