Toon posts:

[MySQL] precies tegenovergestelde query uitvoeren

Pagina: 1
Acties:

Verwijderd

Topicstarter
Heeft iemand enig idee of er een optimalisatie in MySQL bestaat om snel precies de tegenovergestelde records uit een database te halen dan waar je de select op uitvoerd...

vb;

code:
1
SELECT * FROM A where situation like '$situation' and something like '$something'


Het is mij helaas niet gelukt bij een dubbele where niet zo snel mogelijk om het te herschrijven behalve dan via php (oid) uit te lezen welke id's voorbij zijn gekomen en die in de volgende query simpelweg
code:
1
WHERE NOT IN {id's}
te plaatsen... maar het wordt al snel onoverzichtelijk daarmee....

  • bartvb
  • Registratie: Oktober 1999
  • Laatst online: 05-01 14:41
Wat dacht je van:

SELECT * FROM A where NOT (situation like '$situation' and something like '$something')

Verwijderd

Volgens mij heb je hier wel iets aan. Komt uit deze pagina van de manual

code:
1
2
3
4
5
6
7
8
9
The queries:

SELECT * FROM t1 WHERE id NOT IN (SELECT id FROM t2);
SELECT * FROM t1 WHERE NOT EXISTS (SELECT id FROM t2 WHERE t1.id=t2.id);

Can be rewritten as:

SELECT table1.* FROM table1 LEFT JOIN table2 ON table1.id=table2.id
                                       WHERE table2.id IS NULL;

Verwijderd

Topicstarter
Zo zie je maar dat af en toe je even heel simpel moet gaan denken.... :)