ОК, поэтому у нас есть много данных о продажах для каждого из наших клиентов.Мне было легко найти запрос, чтобы получить общий объем продаж для каждого торгового представителя, используя простой запрос:
SELECT `MerchantAddresses`.`Rep Number` AS `Rep Number`,
SUM(`RESIDUALS_2010_12`.`Qual Cr Vol` + `RESIDUALS_2010_12`.`Qual Ch Vol`) AS `VOL_2010_12`,
`Reps`.`First` AS `First`,
`Reps`.`Last` AS `Last`
FROM `MerchantAddresses`, `RESIDUALS_2010_12`, `Reps`
WHERE `RESIDUALS_2010_12`.`MID` = `MerchantAddresses`.`MID` AND
`Reps`.`ID` = `MerchantAddresses`.`Rep Number`
GROUP BY `MerchantAddresses`.`Rep Number`
ORDER BY SUM(`RESIDUALS_2010_12`.`Qual Cr Vol` + `RESIDUALS_2010_12`.`Qual Ch Vol`) DESC
Этот код работает совершенно нормально, возвращая таблицу, в которой указаны общие продажи по торговым представителям дляодин месяцНа данный момент мы выполняем три отдельных запроса, чтобы получить данные о продажах за 3 месяца.Я хочу объединить эти три запроса в один.
Итак, я сделал следующее:
SELECT `MerchantAddresses`.`Rep Number` AS `Rep Number`,
SUM(`RESIDUALS_2010_12`.`Qual Cr Vol` + `RESIDUALS_2010_12`.`Qual Ch Vol`) AS `VOL_2010_12`,
SUM(`RESIDUALS_2010_11`.`Qual Cr Vol` + `RESIDUALS_2010_11`.`Qual Ch Vol`) AS `VOL_2010_11`,
SUM(`RESIDUALS_2010_10`.`Qual Cr Vol` + `RESIDUALS_2010_10`.`Qual Ch Vol`) AS `VOL_2010_10`,
`Reps`.`First` AS `First`,
`Reps`.`Last` AS `Last`
FROM `MerchantAddresses`, `RESIDUALS_2010_12` JOIN ON `RESIDUALS_2010_11` JOIN ON `RESIDUALS_2010_10`, `Reps`
WHERE `RESIDUALS_2010_12`.`MID` = `MerchantAddresses`.`MID` AND
`RESIDUALS_2010_11`.`MID` = `MerchantAddresses`.`MID` AND
`RESIDUALS_2010_10`.`MID` = `MerchantAddresses`.`MID` AND
`Reps`.`ID` = `MerchantAddresses`.`Rep Number`
GROUP BY `MerchantAddresses`.`Rep Number`
ORDER BY SUM(`RESIDUALS_2010_12`.`Qual Cr Vol` + `RESIDUALS_2010_12`.`Qual Ch Vol`) DESC
Я обнаружил, что на самом деле я получаю неправильные значения с этим запросом.Это работает, но объемное значение, которое я получаю для каждого торгового представителя, на самом деле слишком мало ...
Есть идеи?Спасибо!