Összetett keresés MySQL-ben
Sziasztok!
A következő problémára keresek elsősorban MySQL megoldást.
Van három táblám:
1. pict (pict_id, pict_name)
2. tag (tag_id, tag_name)
3. rel (tag_id, pict_id)
A 3. tábla egy N-N kapcsolatot definiál, tehát minden tag-hez több pict tartozhat és minden pict-hez több tag.
Ez idáig teljesen mindennapi.
Szeretnék olyan lekérdezést gyártani, ami a rel táblából kiszedi az összes olyan pict-et, ami egy tag halmaz összes eleméhez tartozik (AND kapcsolat).
Meg tudom ezt egy (legalábbis konstans) lekérdezéssel oldani? Ciklussal persze egyértelmű, de az jelentősen növelheti a futásidőt még tárolt eljárás esetén is.
Ha további táblák bevezetése segíthet a munkámon, akkor lehetséges a bevezetésük.
köszi
zsolt
■ A következő problémára keresek elsősorban MySQL megoldást.
Van három táblám:
1. pict (pict_id, pict_name)
2. tag (tag_id, tag_name)
3. rel (tag_id, pict_id)
A 3. tábla egy N-N kapcsolatot definiál, tehát minden tag-hez több pict tartozhat és minden pict-hez több tag.
Ez idáig teljesen mindennapi.
Szeretnék olyan lekérdezést gyártani, ami a rel táblából kiszedi az összes olyan pict-et, ami egy tag halmaz összes eleméhez tartozik (AND kapcsolat).
Meg tudom ezt egy (legalábbis konstans) lekérdezéssel oldani? Ciklussal persze egyértelmű, de az jelentősen növelheti a futásidőt még tárolt eljárás esetén is.
Ha további táblák bevezetése segíthet a munkámon, akkor lehetséges a bevezetésük.
köszi
zsolt
in, group, having
többtáblás
Kipróbálhatod a fenti aliasos példát join-al is, bár nem hinném, hogy lényeges különbség van, de azért ki tudja...