Вы можете рассмотреть возможность использования системы кодирования, которая слабо привязана (не применяется) к дочерней таблице. Допустим, это цвет, ваш дочерний стол может выглядеть следующим образом.
ID | Name
------------
GRN | Green
PURP| Purple
YELL| Yellow
RED | Red
Теперь у вас есть идентификатор, который, если вы отображаете без объединения, очень удобен для человека, и если вам нужно более точное / подробное значение «Имя», вы можете присоединиться к нему или получить его. Очевидно, что когда вы просматриваете родительскую запись (скажем, это фрукт), вам не нужно выполнять соединение. Кроме того, нет веских причин для изменения идентификатора
ID | Name | Color
-----------------
1 | Banana | YELL
2 | Apple | RED
3 | Cherry | RED
Имейте в виду, что эту систему не следует использовать, если вы планируете добавлять много дочерних типов, но если у вас будет только дюжина, это может быть хорошим способом. Это также не очень хорошая идея, если вы планируете иметь много «фруктов», потому что CHAR / VARCHAR не эффективный способ ГДЕ ваших данных. Но для 99% баз данных этот метод подойдет.