Допустим, у меня есть 2 таблицы
Одна называется Baskets,
другая называется Fruits.
Корзины-
Basket_id , Basket_name
1 - Первая корзина
2 - Вторая корзина
Fruits-
fruit_id , cart_id , fruit_name
1 - 1 – Банан
2 – 1 – Яблоко
3–2 – Груша
SELECT * FROM baskets
JOIN (SELECT GROUP_CONCAT(fruit_id SEPARATOR ', ') FROM fruits WHERE baskets.basket_id=fruits.basket_id) AS der_fruits
ON baskets.basket_id=der_fruits.basket_id
Теперь с помощью этого запроса я хочу получить 2 строки (поскольку есть 2 корзины) со списком идентификаторов фруктов в нем.
Вот так:
id_корзины, фрукты
1–1, 2
2–3
Но сейчас я получаю следующее:
Basket_id, Fruits
2 - 1, 2, 3
Дело в том, что я должен передать глобальное значение Baskets.basket_id в таблице DERIVED. Есть ли что-то похожее на глобальную область видимости в MySQL?
Или есть способ передать глобальное значение Baskets.basket_id в переменную внутри этой производной таблицы?