MySQL выборка из двух таблиц

241
15 августа 2021, 18:50

подскажите, как с помощью SQL запроса получить два поля из разных таблиц.

Нужно: Получить поле id из таблицы store_package_purchases и соответствующие значения name из таблицы store_packages. Связаны они так: поле package из таблицы store_package_purchases = полю id из таблицы store_packages.

Я пытался делать, как-то так:

(SELECT id, package AS p_id
 FROM store_package_purchases
 ORDER BY purchase_timestamp DESC
 LIMIT 10)
UNION 
(SELECT name
 FROM store_packages
 WHERE id = p_id)

Что делаю не так и как изменить запрос таким образом, чтобы он отвечал моим требованиям?

Answer 1
SELECT a.id, b.name
FROM store_package_purchases AS a LEFT JOIN store_packages AS b ON (a.package=b.id)
ORDER BY a.purchase_timestamp DESC LIMIT 10

MySQL LEFT JOIN

Если нет соответствующей строки для правой таблицы в части ON или USING в LEFT JOIN, для правой таблицы используется строка со всеми столбцами, установленными в NULL.

Answer 2
SELECT spp.id, spp.package, sp.name
FROM store_package_purchases spp 
  INNER JOIN `store_packages` sp ON sp.id = spp.package
READ ALSO
Сложный UPDATE (MySQL)

Сложный UPDATE (MySQL)

Одним UPDATE надо решить следующую проблему: Если m_bid != 0 - записать это значение в smaxИначе, записать в smax наименьшее из двух значений: m_bid из shops_table,...

208
Как передать изображение из canvas по ftp

Как передать изображение из canvas по ftp

Есть скрипт создающий изображение в canvas, это изображение получается сохранить в папку, а вот передать его по ftp не удается, он создает файл...

115
Подскажите с API QIWI PHP

Подскажите с API QIWI PHP

День добрыйЮзаю исходники из гитхаба по адресу : https://github

268
Двойной слеш в URL. ЧПУ Yii2

Двойной слеш в URL. ЧПУ Yii2

Есть Action в контроллере

148