Avatar billede slapstick Nybegynder
12. juli 2005 - 13:20 Der er 5 kommentarer og
1 løsning

problem med sql joins

jeg har en asp side hvor jeg henter noget data med en sql statement der bruger inner join:

SELECT userservices.brugerid, userservices.expiredate, services.serviceid, services.servicetype, services.displayname, services.serviceurl, services.abouturl, services.globalid, services.service_modified, services.about_modified, services.countries, services.countryname, services.provider, services.providername FROM userservices INNER JOIN services ON userservices.serviceid = services.serviceid WHERE userservices.brugerid = '" & UserID & "'"

men jeg vil godt joine den med en tabel til..
jeg har nemlig en tredie tabel jeg skal bruge data fra og der er et felt der hedder serviceid der matcher med services.serviceid

hilfe!
Avatar billede slapstick Nybegynder
12. juli 2005 - 13:32 #1
jeg har prøvet med den her:

SELECT userservices.brugerid, userservices.expiredate, services.serviceid, services.servicetype, services.serviceurl, services.abouturl, services.globalid, services.service_modified, services.about_modified, services.countries, services.countryname, services.provider, services.providername, service_language.displayname, service_language.lang FROM userservices INNER JOIN services ON userservices.serviceid = services.serviceid INNER JOIN services ON service_language WHERE userservices.brugerid = '74767w4t66' AND service_language.lang = 'ENG'

men jeg får den her fejl:

Not unique table/alias: 'services'
Avatar billede slapstick Nybegynder
12. juli 2005 - 13:36 #2
hov
SELECT userservices.brugerid, userservices.expiredate, services.serviceid, services.servicetype, services.serviceurl, services.abouturl, services.globalid, services.service_modified, services.about_modified, services.countries, services.countryname, services.provider, services.providername, service_language.displayname, service_language.lang FROM userservices INNER JOIN services ON userservices.serviceid = services.serviceid INNER JOIN services ON service_language.serviceid = services.serviceid WHERE userservices.brugerid = '74767w4t66' AND service_language.lang = 'ENG'
endda
Avatar billede slapstick Nybegynder
12. juli 2005 - 14:24 #3
nu har jeg også prøvet med den her:

SELECT userservices.brugerid, userservices.expiredate, services.serviceid, services.servicetype, services.serviceurl, services.abouturl, services.globalid, services.service_modified, services.about_modified, services.countries, services.countryname, services.provider, services.providername, service_language.displayname, service_language.lang FROM userservices INNER JOIN (service_language INNER JOIN services ON service_language.serviceid = services.serviceid)  ON userservices.serviceid = services.serviceid WHERE userservices.brugerid = '74767w4t66' AND service_language.lang = 'ENG'

men den returnerer 0 rækker.. og den burde returnere 32
Avatar billede slapstick Nybegynder
12. juli 2005 - 14:32 #4
SELECT userservices.brugerid, userservices.expiredate, services.serviceid, services.servicetype, services.serviceurl, services.abouturl, services.globalid, services.service_modified, services.about_modified, services.countries, services.countryname, services.provider, services.providername, service_language.displayname, service_language.lang FROM (userservices INNER JOIN service_language ON userservices.serviceid = service_language.serviceid) INNER JOIN services ON userservices.serviceid = services.serviceid WHERE userservices.brugerid = '74767w4t66' AND service_language.lang = 'ENG'

returnerer også 0 rækker
Avatar billede slapstick Nybegynder
12. juli 2005 - 15:25 #5
SELECT
userservices.brugerid, userservices.expiredate, services.serviceid, services.servicetype, services.displayname, services.serviceurl, services.abouturl, services.globalid, services.service_modified, services.about_modified, services.countries, services.countryname, services.provider, services.providername, service_language.displayname
FROM services
INNER JOIN userservices ON services.serviceid = userservices.serviceid
LEFT OUTER JOIN service_language ON services.serviceid = service_language.serviceid
WHERE userservices.brugerid = '74767w4t66' AND service_language.lang = 'ENG'

returnerer også 0 rækker :(
Avatar billede slapstick Nybegynder
12. juli 2005 - 18:50 #6
nå jeg lukker igen
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester