[SQL] Inner join... omgekeerd

Pagina: 1
Acties:

  • J.apiooo
  • Registratie: Oktober 2000
  • Laatst online: 21-07 10:36
Betreft de volgende query:

SELECT ticket.ticketid, ticket.vluchtnummer
FROM ticket
INNER JOIN ticketbod ON (ticket.ticketid = ticketbod.ticketid)
INNER JOIN ticketorder ON (ticket.ticketid = ticketorder.ticketid)
GROUP BY ticket.ticketid

Deze geeft echter alle records in ticket.... die ook in ticketorder & ticketbod voorkomen. Ik wil echter een overzicht hebben van alle records die juist alleen in ticket, maar niet in ticketbod & ticketorder aanwezig zijn. Is dit makkelijk in te bouwen zonder subqueries (MySQL 3.23)?

Jaap


  • TimMer
  • Registratie: Februari 2000
  • Niet online
code:
1
2
3
4
5
SELECT ticket.ticketid, ticket.vluchtnummer 
FROM ticket 
OUTER JOIN ticketbod ON (ticket.ticketid = ticketbod.ticketid) WHERE ticketbod.ticketid IS NULL
OUTER JOIN ticketorder ON (ticket.ticketid = ticketorder.ticketid) WHERE ticketorder.ticketid IS NULL
GROUP BY ticket.ticketid

Zoiets misschien?

  • J.apiooo
  • Registratie: Oktober 2000
  • Laatst online: 21-07 10:36
Oplossing:

SELECT ticket.ticketid
FROM ticket
LEFT JOIN ticketbod ON ticket.ticketid = ticketbod.ticketid
LEFT JOIN ticketorder ON ticket.ticketid = ticketorder.ticketid
WHERE ticketbod.ticketid IS NULL
AND ticketorder.ticketid IS NULL

Dat werkt :)

Jaap


  • TimMer
  • Registratie: Februari 2000
  • Niet online
Ik zat dus wel in de buurt met die 'IS NULL'. :*)
En dat voor iemand die nog nooit met MySQL heeft gewerkt... 8-)

  • J.apiooo
  • Registratie: Oktober 2000
  • Laatst online: 21-07 10:36
;)

Het had me aan het denken gezet ... bedankt voor de samenwerking :) :)

Jaap


  • TimMer
  • Registratie: Februari 2000
  • Niet online
No problem at all. :)

[ Voor 5% gewijzigd door TimMer op 14-05-2003 00:34 ]

Pagina: 1