从SQL数据库进行Prestashop / SQL查询

问题描述

我正在尝试创建一个查询,该查询返回某种产品(id 49)的每个订单的名字,姓氏,电子邮件和key_value,但是我不能完全正确地配置SQL查询获取每个客户的每个密钥。

SELECT C.email,C.firstname,C.lastname,K.key_value
FROM ps_customer C 
INNER JOIN ps_orders O on C.id_customer = O.id_customer
INNER JOIN ps_order_detail OD on O.id_order = OD.id_order
INNER JOIN ps_keymanager OD on O.id_order = OD.id_order
WHERE OD.product_id =49

解决方法

您可以尝试这个。.但是!。

我不知道ps_keymanager是什么,但是如果您使用它 我不确定您可以在下面的查询中找到它。.;)

SELECT O.reference AS ORDERREF,C.firstname,C.lastname,C.email AS Email
FROM ps_customer C 
INNER JOIN ps_orders O on C.id_customer = O.id_customer
INNER JOIN ps_order_detail OD on O.id_order = OD.id_order
WHERE OD.product_id = 846

这将列出

订单参考|名|姓|电子邮件

在哪里product_id =(在我的情况下为 846

,

我按照订单ID共享我用来从客户那里获得不同信息的咨询服务:

SELECT pod.id_order,c.id_customer,CONCAT(c.firstname,c.lastname) AS client,c.firstname,c.lastname,pa.address1,pa.address2,pa.city,pa.id_country,c.email,pa.postcode,pa.phone_mobile,pa.phone,pc.iso_code AS country
FROM ps_orders po 
  LEFT JOIN ps_order_detail pod  ON (po.id_order = pod.id_order) 
  LEFT JOIN ps_product pp ON (pod.product_id = pp.id_product) 
  LEFT JOIN ps_customer c ON (c.id_customer = po.id_customer) 
  LEFT JOIN ps_address pa ON (pa.id_customer = c.id_customer) 
  LEFT JOIN ps_country pc ON (pc.id_country = pa.id_country) 
WHERE pod.id_order = 34549

您可以添加删除您在 sql查询中的列