[SQL] Maar 1 keer één type record opvragen....

Pagina: 1
Acties:

  • LauPro
  • Registratie: Augustus 2001
  • Laatst online: 05-09 11:09

LauPro

Prof Mierenneuke®

Topicstarter
Ik ben bezig met een klein projectje maar nu ben ik vastgelopen op het volgende: Ik moet een query hebben waarin ik de tabel 'vakken' koppel aan een tabel 'EOs' (Elektronische Overhoringen). Ik doe dit als volgt:
code:
1
SELECT E.vak, V.naam, V.id FROM EOs AS E, vakken AS V, E INNER JOIN V ON E.vak=V.id WHERE E.docent_id=" & session("id") '& " AND vak=" & Request.QueryString("vak") & " ORDER BY V.naam

Zit ook een stukje asp in, maar daar moet je maar even doorheen kijken. 'RequestString("vak")' is in dit geval een nummer dat tussen de 1 en 25 ligt. Maar als ik dit doe krijg ik als er bijvoorbeeld 4 eo's met hetzelfde vak zijn, ook 4 keer in m'n combo-box. Dit moet niet want ik heb er maar 1 nodig. Iemand een idee? Ik wil het via SQL doen en niet iets er omheen maken met asp ofzo, dat vertraagt meet heb ik zo'n idee.

Inkoopacties - HENK terug! - Megabit
It is a war here, so be a general!


  • muis|IA
  • Registratie: Oktober 2001
  • Laatst online: 18-11-2022
als je het in een dropbox wilt zetten hoef je toch maar 1 veld op te vragen ?
Als je die andere velden nou uit je select haalt en voor het veld wat je nog wel ophaalt (voor in de dropbox) DISTINCT zet.
Dan haal je alle waarden maar 1x op

Een vergissing is menselijk maar om er een puinhoop van te maken heb je een computer nodig (met mij erachter)


  • LauPro
  • Registratie: Augustus 2001
  • Laatst online: 05-09 11:09

LauPro

Prof Mierenneuke®

Topicstarter
Op donderdag 11 april 2002 22:28 schreef muis het volgende:
als je het in een dropbox wilt zetten hoef je toch maar 1 veld op te vragen ?
Als je die andere velden nou uit je select haalt en voor het veld wat je nog wel ophaalt (voor in de dropbox) DISTINCT zet.
Dan haal je alle waarden maar 1x op
De werkelijke query is nog wat ingewikkelder, maar ik werd helemaal gek! :'(. Telkens maar die vervelende fouten. Ik heb het predikaat DISTRICT wel proberen te gebruiken maar dat werkte al helemaal niet. Kan je me een voorbeeld geven?

Inkoopacties - HENK terug! - Megabit
It is a war here, so be a general!


  • muis|IA
  • Registratie: Oktober 2001
  • Laatst online: 18-11-2022
Als je alleen het vak wilt hebben krijg je zoiets als:

SELECT DISTINCT V.naam FROM vakken AS V, EOs INNER JOIN V ON EOs.vak=V.id WHERE EOs.docent_id=" & session("id") '& " AND vak=" & Request.QueryString("vak") & " ORDER BY V.naam

Een vergissing is menselijk maar om er een puinhoop van te maken heb je een computer nodig (met mij erachter)


Verwijderd

Je moet nog even een WHERE aan plakken:
WHERE keyvantabel1 = keyvantabel2

  • LauPro
  • Registratie: Augustus 2001
  • Laatst online: 05-09 11:09

LauPro

Prof Mierenneuke®

Topicstarter
Bedankt het werkt nu goed. Maar wat ik nou nog even wou zeggen is dat ze toch die code automatisch moeten inkorten hor. Mijn eerste post verkloot de lay-out helemala namelijk...

Inkoopacties - HENK terug! - Megabit
It is a war here, so be a general!


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 14:16

Crazy D

I think we should take a look.

Op vrijdag 12 april 2002 20:38 schreef laupro het volgende:
Bedankt het werkt nu goed. Maar wat ik nou nog even wou zeggen is dat ze toch die code automatisch moeten inkorten hor. Mijn eerste post verkloot de lay-out helemala namelijk...
:D
Nah die code moet je gewoon zelf wat netter neerzetten :P
Maakt het ook een stuk beter leesbaar dan dat topix zelf moet verzinnen waar 'ie 'm moet afbreken...
code:
1
2
3
4
5
6
7
SELECT E.vak, V.naam, V.id 
FROM EOs AS E, vakken AS V, 
  E INNER JOIN V ON E.vak=V.id 
WHERE 
  E.docent_id=" & session("id") '& " AND 
  vak=" & Request.QueryString("vak") & " 
  ORDER BY V.naam

(niet helemaal perfect :P)

Exact expert nodig?

Pagina: 1