[MySQL] SELECT IN

Pagina: 1
Acties:

  • eborn
  • Registratie: April 2000
  • Laatst online: 12-09 13:59
Ik probeer het volgende in MySQL te realiseren:

- tabel t1 bevat de velden ( ID, cache )
- tabel t2 bevat de velden ( ID, titel )

Nu wil ik doen

SELECT t2.titel FROM t1, t2 WHERE t1.ID=10 AND t2.ID IN ( t1.cache )

Hierbij bevat het cache field een string: "1,2,3,4,5"
Ik wil dus de titels van de ID's die in het cache field van t1.ID=10 staan. Ik dacht dat het misschien zo wel zou werken, maar ik krijg niets terug.

Het moet allemaal in één query (of het moet natuurlijk niet kunnen, dan moet ik dingen gaan aanpassen). Iemand een idee hoe ik die dan kan aanpakken?

  • Grum
  • Registratie: Juni 2001
  • Niet online
helaas pindakaas .. dit is mysql en subqueries kentie niet :)

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Dit gaat niet zo best klinken, maar je ontwerp ziet er brak uit.
Waarom meerdere id's in 1 veld?

En als tweede opmerking, je maakt een carthetisch produkt in je query.

Who is John Galt?


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Ik meende dat er een soort "Eval" functie voor/in mysql is. Daar zou het mee kunnen evt, anders zul je het toch anders op moeten lossen. Mysql gaat niet ineens een tekstje omzetten naar uitvoerbare query-code.

Kijk es naar die delete constructie onderaan, misschien is het wat voor je.
http://www.mysql.com/doc/A/N/ANSI_diff_Sub-selects.html

Waarschijnlijk is het beter je datamodel aan te passen ;)

  • eborn
  • Registratie: April 2000
  • Laatst online: 12-09 13:59
Helaas pindakaas, het datamodel is niet van mij :) En ik kan het ook niet aanpassen. Ik kan alleen maar spullen uit de database trekken. Maar ik zal nog eens wat gaan prutsen, en desnoods moet het dan maar op een andere manier.