Toon posts:

SQL: JOIN met exclusion

Pagina: 1
Acties:
  • 478 views

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb in mijn database een tabel Class en een tabel Student. Dit is een one-to-many relatie. Class heeft een primary field met naam id en Student heeft de columnen class_id en lastname.

Ik zoek alle:
Classes die geen Students hebben of
Classes waarvan geen enkele Student een bepaald achternaam heeft. (Alleen een Class matchen mocht er geen enkele student een bepaald achternaam hebben. Bijvoorbeeld lastname is Jansen dan zodra er een Class is met een Student is met als lastname Jansen dan mag die class niet match )

Alvast bedankt

Acties:
  • 0 Henk 'm!

  • Z-Dragon
  • Registratie: December 2002
  • Laatst online: 18:45
En wat heb je al geprobeerd?

^ Wat hij zegt.


Acties:
  • 0 Henk 'm!

  • Afvalzak
  • Registratie: Oktober 2008
  • Laatst online: 31-08 12:02

Afvalzak

Zet jij mij even buiten?

Zoek eens op "OUTER JOIN" daar zou je een heel eind mee moeten komen. Ik vermoed zelfs dat een voorbeeld zoals jij nu geeft wel ergens op internet te vinden is.

Last.fm | Code Talks


Acties:
  • 0 Henk 'm!

  • Edwin88
  • Registratie: Januari 2005
  • Laatst online: 03-10 23:05
Afbeeldingslocatie: http://www.codeproject.com/KB/database/Visual_SQL_Joins/Visual_SQL_JOINS_orig.jpg

en nu een beetje experimenteren in je database programma ;)

Acties:
  • 0 Henk 'm!

  • xFeverr
  • Registratie: Juni 2011
  • Laatst online: 18:41
Klinkt als een schoolopdracht. Denk niet dat het de bedoeling is dat we hier opdrachten neerpleuren zonder enige moeite er in en dan maar hopen op het juiste antwoord.

Acties:
  • 0 Henk 'm!

  • NNF
  • Registratie: November 2003
  • Laatst online: 29-11-2024

NNF

Ik zou bij zoiets niet als eerste aan een JOIN denken. Een JOIN gebruik je als een andere tabel wil toevoegen aan je resultaat, en wat jij wil is gewoon je resultaat beperken. Het kan wel, maar het voelt een beetje geforceerd; je gaat dan een tabel joinen waar je eigenlijk helemaal niet in geinteresseerd bent. Ik zou een subquery gebruiken. Bijv.:

SQL:
1
2
3
4
5
6
SELECT *
FROM class
WHERE id NOT IN (
    SELECT DISTINCT classid
    FROM student
)

Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 11:48

Creepy

Tactical Espionage Splatterer

xFeverr schreef op zondag 24 april 2016 @ 12:27:
Klinkt als een schoolopdracht. Denk niet dat het de bedoeling is dat we hier opdrachten neerpleuren zonder enige moeite er in en dan maar hopen op het juiste antwoord.
Dat dus. Zie ook Het algemeen beleid #quickstart en lees dat eens door voordat je weer een topic opent. Wat je nu doet is niet de bedoeling.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney

Pagina: 1

Dit topic is gesloten.