Query SQL pentru Prestahop Export Customer info

Salut, nu reusesc sa export o lista cu, clientii care sa contina
Nume, nr de telefon si tara

Am gasit un cod MySQL pe forumurile de la prestashop, dar nu contine tablele de phone, si mobile_phone.

SELECT a.`firstname`,
       a.`lastname`,
       a.`email`,

  (SELECT c.`date_add`
   FROM `ps_guest` g
   LEFT JOIN `ps_connections` c ON c.`id_guest` = g.`id_guest`
   WHERE g.`id_customer` = a.`id_customer`
   ORDER BY c.`date_add` DESC LIMIT 1) AS `last_activity`,

  (SELECT cl.`name`
   FROM `ps_address` ad
   LEFT JOIN `ps_country_lang` cl ON cl.`id_country` = ad.`id_country`
   WHERE ad.`id_customer` = a.`id_customer`
   ORDER BY ad.`id_address` DESC LIMIT 1) AS `country_name`
FROM `ps_customer` a

La acesta imi returneaza:

FirstName Last Name Email last_activity country_name
John DOE xxx@prestashop.com 4/24/2014 11:14 United States
Alain dolon xxx@yahoo.com 4/25/2014 13:08 NULL
Bogdan Irimia xxx@yahoo.com.ro 5/5/2014 8:24 Romania

In loc de last activity as vrea sa fie nr de telefon, chiar si in loc de adresa de email, sa fie nr de telefon.
Multumesc,

Data viitoare când postezi o bucată de cod, acordă 10 secunde pentru a-l formata. Nu stă nimeni să-ți descifreze un one-liner de 500 caractere.

După cum vezi, interogarea ta are alte două sub-queries: unul pentru last_activity, celălalt pentru country_name. Dacă nu ai nevoie de last_activity, ștergi pur și simplu primul sub-queryj.

Acum, pentru telefon: nu cunosc structura presta, dar dacă este în același tabel (ps_customer) ca restul (firstname & co), tot ce trebuie să faci este să adaugi numele coloanei în primul select:

SELECT a.`firstname`,
       a.`lastname`,
       a.`email`,
       a.`phone`,
       a.`mobile_phone`,

Este in tabela

SELECT `phone`, `phone_mobile` FROM `ps_address` WHERE 1

Imi cer scuze, nu prea sunt obisnuit cu aceasta platforma.

poti face join intre aceste 2 tabele

Ar fi cam asa

select c.`firstname`,
           c.lastname`,
           c.email,
           a.phone,
           a.mobile_phone
from custmer c
join address a
on c.id_customer = a.id_customer

Pt tara, exista si tabelul ps_country cu coloana id_address.


Scema completa aici

1 Like