+yann | Bonjour,
J'ai une requête SQL qui me donne le passage (traffic) par date dans chaque magasin. J'aimerais modifier cette requête pour obtenir uniquement le passage de chaque magasin pour la journée d'hier.
Voici ma requête d'origine :
Code :
- select Magasin, Date, MAX(Passage) AS Passage from
- ( select
- cu.CompanyUnitID UnitId,
- cu.Name AS Magasin,
- FORMAT(OpeningDate,'yyyy/MM/dd','en-US') AS Date ,
- coalesce(Value,0 ) AS Passage
- from BanksRegisters.vReports brr
- left join CompanyStructure.vCompanyUnitCashBankRegistersList cubr ON cubr.Name=brr.Name
- left join CompanyStructure.CompanyUnits cu ON cu.CompanyUnitID=cubr.CompanyUnitId
- left join Attributes.vAttributes va ON va.ObjectID=brr.ReportID and va.InternalName='PeopleCountingValue'
- where cu.CompanyUnitID>2 and cu.CompanyUnitID!=37
- ) as sub
- WHERE sub.Passage BETWEEN 0 AND 999
- GROUP BY Magasin,Date
|
J'ai essayé de la modifier sous la forme suivant mais cela augmente le nombre de passage quotidien.
Code :
- select Magasin, Date, MAX(Passage) AS Passage from
- ( select
- cu.CompanyUnitID UnitId,
- cu.Name AS Magasin,
- FORMAT(GETDATE()-1,'yyyy/MM/dd','en-US') AS Date ,
- coalesce(Value,0 ) AS Passage
- from BanksRegisters.vReports brr
- left join CompanyStructure.vCompanyUnitCashBankRegistersList cubr ON cubr.Name=brr.Name
- left join CompanyStructure.CompanyUnits cu ON cu.CompanyUnitID=cubr.CompanyUnitId
- left join Attributes.vAttributes va ON va.ObjectID=brr.ReportID and va.InternalName='PeopleCountingValue'
- where cu.CompanyUnitID>2 and cu.CompanyUnitID!=37
- ) as sub
- WHERE sub.Passage BETWEEN 0 AND 999
- GROUP BY Magasin,Date
|
Auriez vous une idée de pourquoi ca fait ca? |