Bekijk Volledige Versie : Mysql Query probleem
3 tabellen
mvs_movies
mvs_actors
mvs_mov_act
ik probeer twee selectboxen te maken voor een film met bijvoorbeeld
ID=1
eerste selectbox zijn de acteurs die niet in de film spelen.
tweede zijn de acteurs die wel in de film spelen.
de tabel "mvs_mov_act" is de koppel tabel waar dmv )
INNER JOIN mvs_actors ON (mvs_mov_act.act_id = mvs_actors en act_id
wordt bijgehouden welke acteur aan welke film deelneemt.
Welke query gebruik ik nu voor die select boxen. Ik moet met joints
werken, denk ik, maar geraak er echt niet uit.
Dit heb ik met een query builder geprobeerd maar dat werkt niet.
SELECT
mvs_actors.fname
FROM mvs_movies
INNER JOIN mvs_mov_act ON (mvs_movies.id = mvs_mov_act.mov_id)
INNER JOIN mvs_actors ON (mvs_mov_act.act_id = mvs_actors.id)
WHERE
(
(mov_id = 1)
)
waar de 1 dan de film ID is die dynamisch is.
Iemand??
thanks.
Als mijn denkwijze niet de juiste is, mag dit ook gezegd. Misschien
kan het makkelijker. Enigste voorwaarde is dat een acteur aan meerdere
films kan deelnemen.
Jeroen Ruijgers
15/01/04, 11:45
bigbuddha <newsmail@bigbuddha.be> wrote:
> 3 tabellen
> mvs_movies
> mvs_actors
> mvs_mov_act
>
> ik probeer twee selectboxen te maken voor een film met bijvoorbeeld
> ID=1
>
> eerste selectbox zijn de acteurs die niet in de film spelen.
> tweede zijn de acteurs die wel in de film spelen.
> de tabel "mvs_mov_act" is de koppel tabel waar dmv )
> INNER JOIN mvs_actors ON (mvs_mov_act.act_id = mvs_actors en act_id
> wordt bijgehouden welke acteur aan welke film deelneemt.
>
> Welke query gebruik ik nu voor die select boxen. Ik moet met joints
> werken, denk ik, maar geraak er echt niet uit.
> Dit heb ik met een query builder geprobeerd maar dat werkt niet.
SELECT actor_id , actor_naam FROM mvs_actors WHERE actor_id NOT IN (SELECT
actor_id FROM mvs_mov_act WHERE movie_id=....)
SELECT actor_id , actor_naam FROM mvs_actors WHERE actor_id IN (SELECT
actor_id FROM mvs_mov_act WHERE movie_id=....)
Het stuk tussen haakjes levert alle actor_id van de acteurs bij een movie en
de NOT IN of IN spreekt voor zich lijkt mij.
> thanks.
Geen dank
>
> Als mijn denkwijze niet de juiste is, mag dit ook gezegd. Misschien
> kan het makkelijker. Enigste voorwaarde is dat een acteur aan meerdere
> films kan deelnemen.
Denkwijze is juist, maar met JOINS kan je niet alles bereiken, in dit geval
werkt het dus niet correct.
Daniel Tryba
15/01/04, 12:30
Jeroen Ruijgers <salandur@hotmail.com> wrote:
>> Welke query gebruik ik nu voor die select boxen. Ik moet met joints
>> werken, denk ik, maar geraak er echt niet uit.
>> Dit heb ik met een query builder geprobeerd maar dat werkt niet.
> SELECT actor_id , actor_naam FROM mvs_actors WHERE actor_id NOT IN (SELECT
> actor_id FROM mvs_mov_act WHERE movie_id=....)
> SELECT actor_id , actor_naam FROM mvs_actors WHERE actor_id IN (SELECT
> actor_id FROM mvs_mov_act WHERE movie_id=....)
>
> Het stuk tussen haakjes levert alle actor_id van de acteurs bij een movie en
> de NOT IN of IN spreekt voor zich lijkt mij.
Mysql support voor subsqueries is niet ak te geweldig...
http://www.mysql.com/documentation/mysql/bychapter/manual_Introduction.html#ANSI_diff_Subqueries
>> Als mijn denkwijze niet de juiste is, mag dit ook gezegd. Misschien
>> kan het makkelijker. Enigste voorwaarde is dat een acteur aan meerdere
>> films kan deelnemen.
> Denkwijze is juist, maar met JOINS kan je niet alles bereiken, in dit geval
> werkt het dus niet correct.
Met
http://www.mysql.com/documentation/mysql/bychapter/manual_SQL_Syntax.html#Rewriting_subqueries
moet de OP toch wel voldoende inspiratie kunnen opdoen om de query te
herschrijven zonder afhankelijk te zijn van een subquery....
--
Daniel Tryba
Jeroen Ruijgers
15/01/04, 12:45
Daniel Tryba <news_nl.internet.www.server-side@canopus.nl> wrote:
> Jeroen Ruijgers <salandur@hotmail.com> wrote:
>>> Welke query gebruik ik nu voor die select boxen. Ik moet met joints
>>> werken, denk ik, maar geraak er echt niet uit.
>>> Dit heb ik met een query builder geprobeerd maar dat werkt niet.
>> SELECT actor_id , actor_naam FROM mvs_actors WHERE actor_id NOT IN
>> (SELECT actor_id FROM mvs_mov_act WHERE movie_id=....)
>> SELECT actor_id , actor_naam FROM mvs_actors WHERE actor_id IN
>> (SELECT actor_id FROM mvs_mov_act WHERE movie_id=....)
>>
>> Het stuk tussen haakjes levert alle actor_id van de acteurs bij een
>> movie en de NOT IN of IN spreekt voor zich lijkt mij.
>
> Mysql support voor subsqueries is niet ak te geweldig...
>
>
http://www.mysql.com/documentation/mysql/bychapter/manual_Introduction.html#
ANSI_diff_Subqueries
>
>>> Als mijn denkwijze niet de juiste is, mag dit ook gezegd. Misschien
>>> kan het makkelijker. Enigste voorwaarde is dat een acteur aan
>>> meerdere films kan deelnemen.
>> Denkwijze is juist, maar met JOINS kan je niet alles bereiken, in
>> dit geval werkt het dus niet correct.
>
> Met
>
http://www.mysql.com/documentation/mysql/bychapter/manual_SQL_Syntax.html#Re
writing_subqueries
> moet de OP toch wel voldoende inspiratie kunnen opdoen om de query te
> herschrijven zonder afhankelijk te zijn van een subquery....
Denk ik ook.
Daniel Tryba wrote:
> Jeroen Ruijgers <salandur@hotmail.com> wrote:
>
>>>Welke query gebruik ik nu voor die select boxen. Ik moet met joints
>>>werken, denk ik, maar geraak er echt niet uit.
>>>Dit heb ik met een query builder geprobeerd maar dat werkt niet.
>>
>>SELECT actor_id , actor_naam FROM mvs_actors WHERE actor_id NOT IN (SELECT
>>actor_id FROM mvs_mov_act WHERE movie_id=....)
>>SELECT actor_id , actor_naam FROM mvs_actors WHERE actor_id IN (SELECT
>>actor_id FROM mvs_mov_act WHERE movie_id=....)
>>
>>Het stuk tussen haakjes levert alle actor_id van de acteurs bij een movie en
>>de NOT IN of IN spreekt voor zich lijkt mij.
>
>
> Mysql support voor subsqueries is niet ak te geweldig...
>
> http://www.mysql.com/documentation/mysql/bychapter/manual_Introduction.html#ANSI_diff_Subqueries
>
>
>>>Als mijn denkwijze niet de juiste is, mag dit ook gezegd. Misschien
>>>kan het makkelijker. Enigste voorwaarde is dat een acteur aan meerdere
>>>films kan deelnemen.
>>
>>Denkwijze is juist, maar met JOINS kan je niet alles bereiken, in dit geval
>>werkt het dus niet correct.
>
>
> Met
> http://www.mysql.com/documentation/mysql/bychapter/manual_SQL_Syntax.html#Rewriting_subqueries
> moet de OP toch wel voldoende inspiratie kunnen opdoen om de query te
> herschrijven zonder afhankelijk te zijn van een subquery....
>
I'll give it a shot
thanks.
--
Bigbuddha
www.bigbuddha.be