[SQL] Probleem met condition

Pagina: 1
Acties:

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 22:00

BierPul

2 koffie graag

Topicstarter
Ik heb 3 tabellen.

tbl_addresses
tbl_subscibtions
tbl_email_send

Met de volgende query wil ik de adressen uit mn verzendlijst halen die in de subscribtions tabel staan maar niet in tbl_email_send (onder bepaalde condities).

Nu heb ik een query geschreven maar die geeft geen output terug , wat ook wel verklaarbaar is :P

Ben nu alleen ff de draad kwijt hoe het wel te doen :(

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
SELECT
    tbl_addresses.id,
    tbl_addresses.address
FROM
    tbl_addresses, 
    tbl_subscribtions, 
    tbl_emails_send 
WHERE
    tbl_subscribtions.address_id = tbl_addresses.id
AND
    tbl_subscribtions.mail_type = 2
AND
    tbl_addresses.id != tbl_emails_send.addres_id
AND
    tbl_emails_send.mail_type != 2
AND
    tbl_emails_send.mail_id != 2

[ Voor 6% gewijzigd door BierPul op 05-10-2004 11:43 ]

Ja man


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:34
Je zult met een subquery aan de slag moeten:

code:
1
2
3
4
select *
from tbl_adressen,  tbl_subscriptions
where tbl_adresssen.adress_id = tbl_subscriptions.address_id
and tbl_adressen.adress_id not in ( select addres_id from tbl_emails_sent )

https://fgheysels.github.io/


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
code:
1
2
3
4
5
SELECT * 
FROM tbl_adressen a
INNER JOIN tbl_subsriptions s ON a.adres_id = s.adres_id
LEFT OUTER JOIN tbl_email_send e ON a.adres_id = e.adres_id
WHERE e.adres_id IS NULL

Oops! Google Chrome could not find www.rijks%20museum.nl


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:34
P_de_B schreef op 05 oktober 2004 @ 11:44:
code:
1
2
3
4
5
SELECT * 
FROM tbl_adressen a
INNER JOIN tbl_subsriptions s ON a.adres_id = s.adres_id
LEFT OUTER JOIN tbl_email_send e ON a.adres_id = e.adres_id
WHERE e.adres_id IS NULL
Dat kan je natuurlijk ook doen als je met zo'n gaar DBMS werkt dat geen subqueries ondersteund.

https://fgheysels.github.io/


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 22:00

BierPul

2 koffie graag

Topicstarter
mySQL ondersteund ze naar mijn idee niet, op naar mijn idee goeie syntax krijg ik SQL errors :(

We gaan maar aan de Join dan :(

Ja man


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:34
BierPul schreef op 05 oktober 2004 @ 11:56:
mySQL ondersteund ze naar mijn idee niet
Idd, je moet dan aan de slag met de query van P_de_B

https://fgheysels.github.io/


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 22:00

BierPul

2 koffie graag

Topicstarter
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
SELECT 
     *
FROM 
    tbl_addresses a
INNER JOIN 
     tbl_subscribtions s 
ON 
    s.address_id = a.id 
LEFT OUTER JOIN 
    tbl_emails_send e 
ON 
    e.addres_id = a.id 
AND
    e.mail_type = 2
AND
    e.mail_id = 2
WHERE 
    e.addres_id IS NULL


Maar gaat nog niet naar wens :(

[ Voor 107% gewijzigd door BierPul op 05-10-2004 13:33 ]

Ja man

Pagina: 1