mysql multiple many to many joins -
mysql multiple many to many joins -
i have events, events_styles, events_formats tables (an event can have many styles , many formats) trying filter events have events_styles bring together , events_formats join. query should select events particular style , particular format - attempts far:
select * events bring together events_styles on events.id = events_styles.event_id bring together events_formats on events.id = events_formats.format_id events_styles.style_id = 3 , events_formats.format_id = 1; empty set (0.00 sec) select * events_styles events_styles.style_id = 3 +----------+----------+ | event_id | style_id | +----------+----------+ | 3 | 3 | | 2 | 3 | | 4 | 3 | +----------+----------+ 3 rows in set (0.00 sec) select * events_formats events_formats.format_id = 1 +----------+-----------+ | event_id | format_id | +----------+-----------+ | 1 | 1 | | 3 | 1 | | 4 | 1 | +----------+-----------+ 3 rows in set (0.00 sec)
so first query should homecoming event id 4? im sure need combine 2nd , 3rd query subquery im unsure of syntax - thanks
you close!
your query should be:
select * events bring together events_styles on events.id = events_styles.event_id bring together events_formats on events.id = events_formats.event_id events_styles.style_id = 3 , events_formats.format_id = 1;
by joining on format_id , not event_id going event_id = 1 has no correspoding style id of 3. that's went wrong :-)
mysql many-to-many subquery
Comments
Post a Comment