0

我正在尝试创建一个查询,该查询返回特定产品(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

4

2 回答 2

0

我通过订单 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 查询中添加删除您需要的列。

于 2020-10-30T07:47:36.410 回答
0

你可以试试这个..但是!

我不知道 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

这将列出

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

WHERE product_id =(在我的情况下为 846

于 2020-10-22T10:39:01.220 回答