Toon posts:

[mysql] waarom werkt IN niet met waarde uit 2e table

Pagina: 1
Acties:

Verwijderd

Topicstarter
De bedoeling is om de inhoud te halen uit de table inhoud van bepaalde categorieen, die categorieen worden bepaald door het veld c.cats


maar waarom werkt deze query niet?

(de waarde c.cats is bijv: "2,3,4,5")
PHP:
1
SELECT v.* FROM cms c,inhoud i WHERE c.uin=24 AND i.categorie IN (c.cats) ORDER BY i.uin DESC

met bovenstaande query krijg ik alleen de inhoud met categorie = 2 terug.


als ik bijv de query zo uitvoer:
PHP:
1
SELECT v.* FROM cms c,inhoud i WHERE c.uin=24 AND i.categorie IN (2,3,4,5) ORDER BY i.uin DESC

dan werkt het wel.

[ Voor 4% gewijzigd door Verwijderd op 15-03-2005 12:26 ]


Verwijderd

Probeer eens:

<?
SELECT v.* FROM cms c,inhoud i WHERE c.uin=24 AND i.categorie IN (select categorie from cats) ORDER BY i.uin DESC
?>

Verwijderd

Mysql ondersteunt in jouw versie nog geen subqueries.
Die tweede query is namelijk geen subquery.

Verwijderd

Topicstarter
Verwijderd schreef op dinsdag 15 maart 2005 @ 12:30:
Probeer eens:

<?
SELECT v.* FROM cms c,inhoud i WHERE c.uin=24 AND i.categorie IN (select categorie from cats) ORDER BY i.uin DESC
?>
ipv 'cats' heb ik trouwens 'cms' gedaan want die table heet cms

hij zegt:
#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'select categorie from cms) ORDER BY v.uin DESC LIMIT 0, 30' at

Verwijderd

Topicstarter
Verwijderd schreef op dinsdag 15 maart 2005 @ 12:37:
Mysql ondersteunt in jouw versie nog geen subqueries.
Die tweede query is namelijk geen subquery.
ik draai MySQL 4.0.22, dus dat zou toch wel moeten ondersteunen denk ik?

  • ludo
  • Registratie: Oktober 2000
  • Laatst online: 01-03 18:17
Hee naamgenoot ;)
Verwijderd schreef op dinsdag 15 maart 2005 @ 12:40:
[...]


ipv 'cats' heb ik trouwens 'cms' gedaan want die table heet cms

hij zegt:
#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'select categorie from cms) ORDER BY v.uin DESC LIMIT 0, 30' at
Welke versie van MySQL gebruik je? < 4.1? Dan worden subqueries namelijk niet ondersteund.

Je kunt ook proberen om dit met een JOIN op te lossen.

Verwijderd

Zie mijn vorige reply.

Zo moeilijk was het trouwens niet te vinden. Volgens mij was het het eerste zoek resultaat op 'subquery'
.
Zie dit topic

Verwijderd

Topicstarter
Verwijderd schreef op dinsdag 15 maart 2005 @ 12:43:
Zie mijn vorige reply.

Zo moeilijk was het trouwens niet te vinden. Volgens mij was het het eerste zoek resultaat op 'subquery'
.
Zie dit topic
schaam schaam...

thnx....
Pagina: 1