Unión a SQL por campo que * puede * estar vacío
En mi base de datos SQL CE tengo tres tablas:customer
, list
ycustomerlist
(una mesa de unión entrecustomer
ylist
- ya que es una relación de muchos a muchos).
Estoy intentando ejecutar una consulta que mostrará todas las listas actuales y también la cantidad de clientes que actualmente están suscritos a esa lista (contando desdecustomerlist
mesa).
Aquí está mi consulta actual:
select list.listid, count(customerlist.customerid) as numppl, list.ShortDesc
from list inner join customerlist on list.listid=customerlist.listid
group by list.ShortDesc, list.listid
order by numppl desc
La estructura actual de esta base de datos es:
[Customer] [List] [CustomerList]
CustomerId ListId CustomerListId
Name ShortDesc CustomerId
Other details ListId
Esto devuelve actualmente todas las listas que tienen clientes actualmente asignados a ellos, pero no las listas que están vacías. Las listas vacías están ocultas.
Me gustaría modificar esta consulta para mostrar también listas vacías, pero estoy teniendo problemas. Mi salida deseada es:
Name numppl
listA 375
listB 45
listC 0
(En el ejemplo anterior, listC no se está devolviendo actualmente).
¿Alguna idea sobre cómo mostrar también la lista C en la consulta?