Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[MySQL] Vreemd probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Wanneer ik in MySQL v5.0.22 de volgende (compleet absurde) query uitvoer:

SQL:
1
2
3
4
5
6
7
    SELECT * FROM keywords AS kw
    WHERE keyword = 'cruises'
    AND keyword NOT IN (
        SELECT keyword FROM keywords
        WHERE keyword = kw.keyword
    )
    GROUP BY kw.keyword


Dan krijg ik 0 resultaten.

Wanneer ik in MySQL v5.0.41 dezelfde query uitvoer krijg ik wel een resultaat...

Als ik in deze versie de GROUP BY weglaat, dan zijn er echter geen resultaten meer.

Heeft iemand hier een mogelijke verklaring voor? Het lijkt me dat de eerdere versie van MySQL een logische resultaat bezorgt, maar de nieuwe versie niet wanneer GROUP BY toegepast wordt, of mis ik iets?

Verwijderd

Klinkt als een bug in 5.0.41: deze query hoort gewoon niets terug te geven.
Wat geeft 5.0.41 terug? Misschien een record met keyword NULL? Zo ja, dan verklaart dat 't misschien, want NULL is nergens mee te vergelijken (zelfs niet met NULL). En de manier waarop database engines daarmee omgaan wil nog wel 's varieren...

Verwijderd

Topicstarter
Bedankt, ik denk dat dat het probleem was.

Edit: Helaas, zelfs nu alles als NOT NULL is aangeduid resulteert de query nog in een resultaat...

[ Voor 54% gewijzigd door Verwijderd op 24-10-2007 22:28 ]


  • Voutloos
  • Registratie: Januari 2002
  • Niet online
In 5.0.41 zitten bugs waardoor sommige queries met group by een ongewenst resultaat geven. Test eens met >= 5.0.44 :)

[ Voor 3% gewijzigd door Voutloos op 25-10-2007 08:21 ]

{signature}


  • reddevil
  • Registratie: Februari 2001
  • Laatst online: 06-10 14:25
sowieso zou een "select *" met een group by al errors bij uitvoeren moeten opleveren, want eigenlijk kan dat niet.