如何使用Prestashop的后台SQL管理器从两个不同的表中导出用户数据?

时间:2018-07-28 19:33:47

标签: mysql sql prestashop prestashop-1.6

我对sql不好,因此我需要帮助导出客户的名字,电子邮件地址,他们的国家/地区,以及在可能的情况下最后一次访问该商店。

通过使用此查询,我设法获得了电子邮件和名字:

SELECT firstname, lastname, email, active FROM  psdb_customer

据我了解,由于其他数据存储在不同的db表中,因此我应该使用联接从两个表中获取数据,但我一直无法弄清楚

欢迎任何帮助

2 个答案:

答案 0 :(得分:0)

过去,我曾在PrestaShop forum中为某人提供过类似帮助。此查询应该有效,只是要记住要获得客户所在的国家/地区,他们应该至少注册一个地址,当然我使用的是默认的数据库前缀:

pack_status

答案 1 :(得分:0)

Rolige的答案就是我想要的。

这是另一个查询,允许按国家(使用id_country)过滤结果

SELECT SQL_CALC_FOUND_ROWS  a.`id_address`,
a.firstname as firstname,
a.lastname as lastname,
cl.id_country as country, cl.`name` as country
FROM `ps_address` a
LEFT JOIN `ps_country_lang` cl ON (cl.`id_country` = a.`id_country`
AND cl.`id_lang` = 1)
LEFT JOIN `ps_customer` c ON a.id_customer = c.id_customer
WHERE 1 AND a.id_customer != 0
AND c.id_shop IN (1)
AND a.`deleted` = 0
AND cl.`id_country` = '8'
ORDER BY a.`id_address` ASC