Haciéndolo "al estilo Velneo" podría quedar más sencillo:
- Tabla de clientes.
- Tabla de provincias.
- Tabla de provincias por cliente: Las 2 anteriores son maestras de esta.
Para saber cuantas provincias distintas: Cargas la lista completa de las provincias por cliente, subes al maestro de provincias y ya lo tienes.
Para saber cuantas provincias de 1 o varios clientes: Cargas la lista de clientes, bajas a las provincias de los clientes, subes a las provincias y ya lo tienes.
Para saber cuantas clientes de 1 o varias provincias: Igual que el caso anterior, pero al revés.
Además, te aseguras de que todas las provincias se hayan escrito de la misma forma. Si manejas sólo nombres y el usuario se equivoca al escribir, Madrid y Mdrid serán provincias distintas.