Помогите разобраться с выборкой данных из связанных таблиц MySQL
Вопрос простой, но не могу даже сообразить как это погуглить. Есть две связанных таблицы, одна справочник кошельков (альфа карта, карта сбера и т.д.), вторая таблица операций перемещения денег, из ID первого кошелька в ID второго.
На фото видно, что PHPMyAdmin видит описание взятое из связанной таблицы, а с названием кошелька:
Но как получить его в запросе я что-то не соображу.
Сейчас у меня такой запрос, но он выводит только ID кошельков, а не их названия:
SELECT
movements.id AS move_id,
DATE_FORMAT(movements.date, '%d %M %Y') AS show_date,
movements.wallet_from AS wallet_from,
movements.wallet_to AS wallet_to,
movements.value AS value,
wallets.description AS wallet_name
FROM `movements`
JOIN wallets on movements.wallet_from = wallets.id
WHERE movements.date >= '{$_SESSION['calendar_of_move_from']}' AND movements.date <= '{$_SESSION['calendar_of_move_to']}'
ORDER BY movements.date;");
- https://russiahomefinance.000webhostapp.com/images/2.JPG - общий вид таблиц со связями
- https://russiahomefinance.000webhostapp.com/images/3.JPG - так выглядит содержимой справочной таблицы с кошельками.
Ответы (1 шт):
Автор решения: Aleksey Vaganov
→ Ссылка
Вот запрос, выводящий еще названия кошельков:
SELECT
movements.id AS move_id,
DATE_FORMAT(movements.date, '%d %M %Y') AS show_date,
movements.wallet_from AS wallet_from,
movements.wallet_to AS wallet_to,
movements.value AS value,
w_from.description AS wallet_from_name,
w_to.description AS wallet_to_name
FROM `movements`
JOIN wallets w_from on movements.wallet_from = w_from.id
JOIN wallets w_to on movements.wallet_to = w_to.id
WHERE movements.date >= '{$_SESSION['calendar_of_move_from']}' AND movements.date <= '{$_SESSION['calendar_of_move_to']}'
ORDER BY movements.date;");
