J'ai deux tables: Clients et Commandes. Je fais une jointure gauche des clients et commandes sur la colonne CustomerID qui est la clé primaire dans les clients et la clé étrangère dans les commandes.SQL - impossible d'effectuer un comptage distinct lors de la jonction de deux tables
- Lorsque je liste CustomerID après l'avoir joint, j'obtiens la liste comme prévu.
- Lorsque je compte le nombre de CustomerID, je reçois à nouveau le nombre d'enregistrements que j'attends.
- Lorsque j'utilise un nombre distinct pour CustomerID, j'obtiens une erreur.
1.
select Customers.CustomerID as list
from Customers left join Orders on Customers.CustomerID = Orders.CustomerID
where Customers.CustomerID = 4;
2.
select count(Customers.CustomerID) as numRecord
from Customers left join Orders on Customers.CustomerID = Orders.CustomerID
where Customers.CustomerID = 4;
3.
select count(distinct (Customers.CustomerID)) as numRecord
from Customers left join Orders on Customers.CustomerID = Orders.CustomerID
where Customers.CustomerID = 4;
Je ne comprends pas où est l'erreur. Toute aide serait appréciée. L'erreur:
Error in SQL:
Syntax error (missing operator) in query expression 'count(distinct Customers.CustomerID)'.
qui DB que vous utilisez? – scaisEdge
Je cours juste les requêtes sur ce lien: https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_join_inner – prog