Допустим, у меня есть эти таблицы на моей базе данных:
items
categories
weapons
shields
swords
И мне нужно создать соединение следующим образом:
SELECT items.*, {swords}.*
FROM items
INNER JOIN categories
ON categories.id = items.category_id # <-- here I know that the item is a sword
INNER JOIN {swords}
ON {swords}.item_id = item.id
WHERE items.id = 12
Но часть {swords}
является динамической, поскольку я обнаружил, что предметом является меч , проверяющий поле categories.name
.
Запрос изменится, если categories.name
будет " shield " к этому:
SELECT items.*, shields.*
FROM items
INNER JOIN categories
ON categories.id = items.category_id
INNER JOIN shields
ON shields.item_id = item.id
WHERE items.id = 13
Я использовал {
и }
вокруг swords
, чтобы показать его как переменную
Спасибо за ваш ответ и извините за мой английский! :)