SQL, konsitente records ud af "en til mange" relationer
Hej
Jeg har en SQL udfording som jeg ikke helt kan få hul på.
Fra nedenstående 3 tabeller skal jeg gerne kunne få nogle konsitente records ud med følgende felter:
UderProfileId | Name | Email | ZipCode | Count(Advertisments)
Userprofiles kan have flere advertisements, og advertisements kan have flere advertisements_Zip. ---------------------------------------------------------
Kriterierne kan feks være på [UserProfile] Niveau ZipCode = 2200
De kan også ligge på [Advertisement] niveau TypeId = 1
Og de kan også ligge i [Advertisement_Zip] niveau: ZipCode between (2100 and 2200)
UserProfile ----------------------- - PK_UserProfileId - Name - Email - ZipCode
select u.PK_UserProfileId UserProfileId, u.Name, u.Email, u.ZipCode, count (*) cnt from UserProfile u inner join Advertisement a on u.PK_UserProfileId = a.FK_UserProfileId where u.ZipCode = 2200 group by u.PK_UserProfileId UserProfileId, u.Name, u.Email, u.ZipCode
på Advertisement niveau
select u.PK_UserProfileId UserProfileId, u.Name, u.Email, u.ZipCode, count (*) cnt from UserProfile u inner join Advertisement a on u.PK_UserProfileId = a.FK_UserProfileId where a.TypeId = 1 group by u.PK_UserProfileId UserProfileId, u.Name, u.Email, u.ZipCode
på Advertisement_Zip niveau
select u.PK_UserProfileId UserProfileId, u.Name, u.Email, u.ZipCode, count (*) cnt from UserProfile u inner join Advertisement a on u.PK_UserProfileId = a.FK_UserProfileId where a.AdvertisementId in (select FK_AdvertisementID from Advertisement_ZIP where ZipCode between 2100 and 2200) group by u.PK_UserProfileId UserProfileId, u.Name, u.Email, u.ZipCode
select u.PK_UserProfileId UserProfileId, u.Name, u.Email, u.ZipCode, count (*) cnt from UserProfile u inner join Advertisement a on u.PK_UserProfileId = a.FK_UserProfileId where u.ZipCode = 2200 and a.TypeId = 1 and a.AdvertisementId in (select FK_AdvertisementID from Advertisement_ZIP where ZipCode between 2100 and 2200) group by u.PK_UserProfileId UserProfileId, u.Name, u.Email, u.ZipCode
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.