Автор Тема: SQL запрос по экспорту заказов.  (Прочитано 179 раз)

09 Сентября 2015, 13:51:35
  • Новичок
  • *
  • Сообщений: 1
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Здравствуйте прошу помочь мне кто может, умеет. Я новичок и мне требуется написать запрос в базу для дальнейшего экспорта. В нете поискал нашел один запрос
SELECT d.id_order, d.product_reference, d.product_attribute_id, d.product_quantity,  g.firstname, g.lastname,  ai.address1, ai.address2,  ai.postcode, ai.city, ai.other,  ai.phone_mobile
FROM ps_order_detail d
LEFT JOIN ps_orders o ON ( d.id_order = o.id_order )
LEFT JOIN ps_customer g ON ( o.id_customer = g.id_customer )
LEFT JOIN ps_stock_available s ON (d.product_id = s.id_product)
LEFT JOIN ps_address ad ON (o.id_address_delivery = ad.id_address)
LEFT JOIN ps_address ai ON (o.id_address_invoice = ai.id_address)
LEFT JOIN ps_group_lang gl ON ( g.id_default_group = gl.id_group )
LEFT JOIN ps_order_state_lang os ON ( o.current_state = os.id_order_state )
WHERE os.id_lang =1
GROUP BY d.id_order
ORDER BY d.id_order DESC

но здесь мне не хватает размеров и цвета заказываемой продукции. Прошу помогите как их добавить.
И еще объясните пожалуйста что за буквы перед именами таблиц? Откуда их взять или я сам могу поставить любую букву?
09 Сентября 2015, 14:24:23
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 33028
  • Репутация: +26761/-0
    • Просмотр профиля
Цитировать
но здесь мне не хватает размеров и цвета заказываемой продукции.
Это атрибуты и комбинации. Что касается экспорта/импорта в prestashop, то ответ есть в теме - SQL запрос для выбора всех товаров.
Цитировать
Для комбинаций нужно создать другой запрос Импорт товаров и комбинаций делают с разных файлов.

Если вам нужен экспорт в другую смс или программу, то можете добавить выборку названия атрибутов в один запрос. Буквы перед именами таблиц это псевдонимы чтобы не писать полностью названия таблицы перед названием поля. Можете присваивать любую букву для любой таблицы, только чтобы не повторялись. Можно использовать 2,3... буквы.
Названия атрибутов можно взять из таблицы `ps_attribute_lang` из поля  `ps_attribute_lang`.`name`.
LEFT JOIN `ps_attribute_lang` ON ( d.product_attribute_id = `ps_attribute_lang`.`id_attribute`)