У меня проблема с созданием запроса. Но прежде чем я прошу вас о них, пожалуйста, посмотрите на три таблицы, мне нужно использовать:Ищет правильное соединение (получение дубликатов)
Table_1 // AdminInvoices
[AdminId] [InvoiceId] (...)
Table_2 // AdminClientSystem
[AdminId] [ClientId] (...)
Table_3 // ClientData
[CompanyId] [CompanyName] (...)
еще несколько замечаний о таблицах:
Table_1
InvoiceID является ИНТ не уникален в целом, но и для компании именно:
AdminId InvoiceId
16 1
14 1
24 1
3149 1
3150 1
3159 2
3157 2
3150 2
3149 2
3145 2
16 3
14 3
24 3
2015 3
3149 3
3159 4
3157 4
3150 4
Table_2:
AdminId CompanyId
3 1
3 1
3 1
3 1
3 1
3 1
3 2
3 2
3 3
3 4
3 4
3 4
3 9
3 9
3 9
3 9
3 9
3 9
3 9
3 9
3 13
3 13
3 13
Table_3:
CompanyId CompanyName
1 C1
2 C2
3 C3
9 C4
13 C5
У меня есть проблема с созданием соответствующего запроса с объединением. В моем случае я всегда получал избыточные данные в качестве ответа. Я бы хотел получить количество счетов-фактур на одну компанию.
Скажем, что я уверен, что C1 сформировал 100 счетов-фактур C2 50 и C3 200. Какой бы запрос я не делал, цифры примерно в два раза или даже больше - некоторые строки из других таблиц копируются в общий результат.
То, что я пробовал:
SELECT CL.CompanyName, count([IncentiveId])
FROM AdminInvoices
INNER JOIN AdminClientSystem
ON AdminInvoices.AdminId = AdminClientSystem.AdminId
INNER JOIN ClientData
ON AdminClientSystem.CompanyId = ClientData.CompanyId
GROUP BY CL.CompanyName
ORDER BY CL.CompanyName ASC
Заранее спасибо за любую помощь! :)
Я прав, рассматривая это как SQL, а не MySQL? – Simone