Mailinglisten-Archive |
Hi Helge, Marcus
Marcus Bohn wrote:
> Auf diese Art vermeidet man Redundanzen, da lediglich in der Verknüpfungs-
> tabelle Werte (IDs) wiederholt werden.
> Die Abfragen laufen dann mehrstufig: zuerst wird über die ID des Schlagworts
> herausgefunden, welche Newsartikel-ID(s) zutreffen, und dann über die
> Newsartikel-IDs die entsprechende Artikel.
Das lässt sich natürlich über ein einzelnes Query durchführen:
SELECT News.Inhalt, ...
FROM News left join NewsSchlagwoerter on News.ID =
NewsSchlagwoerter.News-ID
left join Schlagwoerter on
NewsSchlagwoerter.Schlagwoerter-ID =
Schlagwoerter.ID
WHERE Schlagwoerter.Schlagwort LIKE 'meinSchlagwort';
Der Vorteil liegt aber vor allem auch darin, dass alle Schlagwoerter per
SELECT Schlagwort FROM Schlagwoerter ORDER BY Schlagwort;
ausgelesen werden kann und dem Benutzer als DropDown-Liste zur Verfügung
gestellt werden könnte.
> Die größe der Tabelle Verknüpfung dürfte m.E. keine Probleme geben, auch
> wenn im Laufe der Zeit etliche tausend Datensätze zusammenkommen.
Die Grenze liegt bei MySQL da noch immer bei 2 GB Tabellengrösse. Ewig
weit weg also :)
Grüessli, Johannes
---
*** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive