Есть три таблицы
english_words:
id INT | word VARCAHR
-----------------------
1 | word1
2 | word2
english_phrases:
id INT | phrase VARCHAR
------------------------
1 | phrase1
2 | phrase2
russian_translations:
id INT | from_type ENUM(word, phrase) | from_id | translation
----------------------------------------------------------------
1 | word | 1 | Перевод word1
2 | word | 2 | Перевод word2
3 | phrase | 1 | Перевод phrase1
4 | phrase | 2 | Перевод phrase3
В первой - хранится список слов, во второй - список фраз, в третей перевода для первой и второй таблицы. Тип сущности, определяется по полю from_type, id сущности - по полю from_id.
Собственно вопрос: существует ли возможность, задать внешний ключ по полям from_type и from_id, с учетом значения в from_type ?
Т.е. если в from_type значение word, то ссылаться на english_words.id, а если phrase, то на english_phrases.id.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей