Hoy una consulta sencilla para averiguar aquellos clientes de nuestro Prestashop que no nos han dejado su dirección:
SELECT
c.id_customer,
CONCAT(c.firstname, ' ', c.lastname) AS customer_name,
COUNT(a.id_address) AS address_count
FROM
ps_customer c
INNER JOIN
ps_address a ON c.id_customer = a.id_customer
WHERE
a.active = 1 -- Considerar solo las direcciones activas
AND a.deleted = 0 -- Ignorar direcciones eliminadas
GROUP BY
c.id_customer, customer_name
HAVING
COUNT(a.id_address) < 1 -- Filtrar clientes sin dirección
ORDER BY
address_count DESC;
O tambien podemos encontrar aquellos clientes que tienen más de una dirección modificando esta linea:
COUNT(a.id_address) > 1 -- Filtrar clientes con más de una dirección
Que nos puede ayudar localizar ciertas repeticiones o incongruencias que lleven a posibles fallos de entregas.