У меня возникли проблемы с подсчетом соответствующих контактов, сайтов и devis клиента в моей базе данных.Оператор SQL для подсчета соответствующих записей
Мои таблицы:
TABLE Devis
idDevis (PK)
idSiteClient (FK)
TABLE SiteClient
idSiteClient (PK)
idClient (FK)
TABLE Client
idClient (PK)
TABLE Contact
idContact (PK)
idClient (FK)
Моего текущее утверждение
$requete = myPDO::getInstance()->prepare(<<<SQL
SELECT COUNT(sc.idSiteClient), COUNT(dvs.idDevis), COUNT(ct.idContact)
FROM SiteClient sc, Devis dvs, Client clt, Contact ct
WHERE dvs.idSiteClient = sc.idSiteClient
AND sc.idClient = clt.idClient
AND clt.idClient = ct.idClient
AND clt.idClient = :id
SQL
);
$requete->execute(array(":id" => $id));
Но это дает мне 15, 15, 15, что неправильно, я должен иметь 5 Сайта, 2 Devis и 5 контакта
спасибо за помощь
Вы рассчитываете количество строк из JOIN здесь. (Удалите COUNT и выполните тот же выбор и посмотрите, что вы получите.) – jarlh
[{«idSiteClient»: «1», «idDevis»: «14», «idContact»: «3»}] не попадают туда он исходит от – xNeyte
Просто сделал, дал 2, 3, 5 – xNeyte