Avatar billede mccannon Nybegynder
31. august 2002 - 08:43 Der er 15 kommentarer og
1 løsning

SQL 3 Inner joins

Hejsa

kan sgutte finde ud af hvor fejlen er i  den her sql...

Fejl .:
Microsoft JET Database Engine error '80040e14'

Syntax error in JOIN operation.

SQL Sætning .:
SQL = "SELECT TOP 5 tblUgensvinder.ID, tblUgensvinder.BrugerID, tblUgensvinder.Uge, tblBruger.ID, tblBruger.Navn,"
SQL = SQL & " tblBruger.Postnr, tblBruger.Alder, tblpostnr.Byen, tblPremie.VinderID, tblPremie.Premie"
SQL = SQL & " FROM tblUgensVinder"
SQL = SQL & " INNER JOIN (tblBruger INNER JOIN (tblpostnr INNER JOIN (tblPremie ON (tblUgensVinder.BrugerID = TblPremie.VinderID) ON (tblBruger.postnr = tblpostnr.postnr)))"
SQL = SQL & " ON tblUgensvinder.BrugerID = tblBruger.ID"
SQL = SQL & " ORDER BY tblUgensvinder.ID DESC"
Avatar billede mugs Novice
31. august 2002 - 08:56 #1
Denne TOP 5 sætning er afprøvet og virker i Access97:


SELECT TOP 5 ugensvinder.id, ugensvinder.navn, ugensvinder.resultat
FROM ugensvinder
ORDER BY ugensvinder.resultat DESC;
Avatar billede mccannon Nybegynder
31. august 2002 - 08:59 #2
Umm er ligsom i innner join delen det går galt :-(
Avatar billede mugs Novice
31. august 2002 - 09:04 #3
Afprøvet med en INNER JOIN og et kriterie i uge.

SELECT TOP 5 ugensvinder.id, ugensvinder.uge, ugensvinder.resultat
FROM ugensvinder INNER JOIN bruger ON ugensvinder.id = bruger.id
WHERE (((ugensvinder.uge)=34))
ORDER BY ugensvinder.resultat DESC;
Avatar billede mccannon Nybegynder
31. august 2002 - 09:08 #4
det er sikkert rigtig og det virker sikkert helt fin du eksempel..menu nu ligger det altså sådan at jeg har 4 tabeller som skal joines og ikke bare 2 ..sorry
Avatar billede mugs Novice
31. august 2002 - 09:14 #5
Men 4 tabeller kan de se sådan ud:

SELECT TOP 5 ugensvinder.id, ugensvinder.uge, ugensvinder.resultat, by.by, efternavn.efternavn
FROM ((ugensvinder INNER JOIN bruger ON ugensvinder.id = bruger.id) INNER JOIN efternavn ON ugensvinder.id = efternavn.id) INNER JOIN [by] ON ugensvinder.id = by.id
WHERE (((ugensvinder.uge)=35))
ORDER BY ugensvinder.resultat DESC;
Avatar billede sthen Nybegynder
31. august 2002 - 09:25 #6
Nu er I jo rigtig godt i gang med at løse problemet her, så luk lige det andet spørgsmål, du har stillet, som faktisk er identisk med dette.

http://www.eksperten.dk/spm/252369
Avatar billede neteffect Nybegynder
31. august 2002 - 09:28 #7
Det vil gøre fejlfindingen nemmere, hvis du viser os en response.write SQL
Avatar billede mccannon Nybegynder
31. august 2002 - 09:28 #8
WOOOHOOOOO
DET VIRKER
har kun brugt det meste af natten på det ;-)
hvis der ikke er nogen som har fortalt dig det før, så er du en GENIAL Mand..øhh eller kvinde ;-)
umm humm..måske skulle du lige komme med et svar ;)
Avatar billede mccannon Nybegynder
31. august 2002 - 09:29 #9
er på vej sthen :)
Avatar billede terry Ekspert
31. august 2002 - 09:30 #10
mccannon if you send the dB to terry@santhell.dk then I will take a lok for you.
Avatar billede terry Ekspert
31. august 2002 - 09:31 #11
Oh! now I can see that you have got it working.
Avatar billede mccannon Nybegynder
31. august 2002 - 09:35 #12
Thanks for the offer Terry, if i come in trouble again with those SQL thingies, would you mind if i used that email ?
Avatar billede mugs Novice
31. august 2002 - 09:59 #13
Hvad var løsningen?
Avatar billede mugs Novice
31. august 2002 - 10:02 #14
Da jeg er den eneste, der har lavet et forslag, kunne det være mig han mener

umm humm..måske skulle du lige komme med et svar ;)
Avatar billede mccannon Nybegynder
31. august 2002 - 11:20 #15
det her var løsningen mugs :)

SELECT TOP 5 ugensvinder.id, ugensvinder.uge, ugensvinder.resultat, by.by, efternavn.efternavn
FROM ((ugensvinder INNER JOIN bruger ON ugensvinder.id = bruger.id) INNER JOIN efternavn ON ugensvinder.id = efternavn.id) INNER JOIN [by] ON ugensvinder.id = by.id
Avatar billede mugs Novice
31. august 2002 - 11:30 #16
Tak for point.
Det med genialiteten er nu overdrevet ikke så lidt.
Jeg lavede blot en testdb med 4 tabeller, navngav dem som du har gjort. Derefter en forespørgsel med alle tabeller og joinede dem, trak relevante felter ned i forespørgselsgitteret og skrev en SELECT TOP 5.

That's is. Keine hexerei - nur behändigheit
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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