Mailinglisten-Archive |
Hallo Trawell, Die Zuordnungtabelle könnte auch der Einfachheit halber nur artikel + shop_id (beide im PK) beinhalten. Das ist noch besser! So verhinderst du doppelte Zuordnungen! ansonsten hat André mit der Abfrage schon recht. Ansonsten müsstest du bei Andrés Lösung den Spaltentyp von Integer / Varchar zu "SET" ändern. Grüße Robert -----Ursprüngliche Nachricht----- Von: php-bounces at phpbar.de [mailto:php-bounces at phpbar.de] Im Auftrag von A. Sauder Gesendet: Donnerstag, 6. Oktober 2011 10:55 An: deutschsprachige PHP-Mailingliste Betreff: Re: [php] Abfrage über Zwischentabelle Hallo Trawell Das SQL für deine Abfrage wäre: SELECT tbl_artikel.* FROM tbl_zuordnung LEFT JOIN tbl_artikel ON tbl_artikel.id_artikel = tbl_zuordnung.id_artikel WHERE tbl_zuordnung.shop = '99' ORDER BY tbl_artikel.artikelname Die Zuordnungstabelle ist an und für sich keine Schlechte Idee. Es gibt da noch eine andere Lösung die du machen könntest: ----------------- tbl_artikel ----------------- id_artikel (pk) artikelname shop_id_liste <-- Hier kommen, mit Komma getrennt, die ID der Shops rein (z.B. 12,45,99) ----------------- ----------------- tbl_shops ----------------- id_shop (pk) shopname ----------------- Dadurch wäre die Abfrage dann: SELECT tbl_artikel.* FROM tbl_artikel WHERE FIND_IN_SET('99', tbl_artikel.shop_id_liste) > 0 ORDER BY tbl_artikel.artikelname Gruss André Am 06.10.2011 10:44, schrieb Trawell Mildor: > Hallo zusammen > > Als völliger Neuling in diesem Thema habe ich wieder mal ne Frage > > ich habe in MySQL drei Tabellen erstellt > > > ----------------- > tbl_artikel > ----------------- > id_artikel (pk) > artikelname > ----------------- > > > und hier die zweite Tabelle > > ----------------- > tbl_shops > ----------------- > id_shop (pk) > shopname > ----------------- > > > > So, und nun will ich ja Artikel mit Shops verknüpfen, ich meine, > jeder > Artikel kann mehreren Shops zugeteilt werden, aber auch ein Shop kann > mehrere Artikel haben. > > Also hab ich eine dritte Tabelle für die Zuordnung gemacht > > die sieht so aus > > > ----------------- > tbl_zuordnung > ----------------- > id_zuordnung (pk) > id_artikel > id_shop > ----------------- > > > in dieser Tabelle würde dann halt stehen, Artikel 1 gehört zu Shop 3, > Artikel 4 gehört zu Shop 99, Artikel gehört zu Shop 3 und so weiter. > > Wie sieht nun ein Abfrage Befehl aus, wenn alle Artikel von Shop 99 > sehen > will ? > > Verwende ich diesen Abfrage Befehl auch für ein Update, oder Insert ? > > Danke für Eure Hilfe im voraus > > > Gruss, Trawell -- ** Allgemeine deutschsprachige PHP-Liste: php at phpbar.de ** Informationen: http://www.phpbar.de http://lists.phpbar.de/mailman/listinfo/php ----- eMail ist virenfrei. Von AVG überprüft - www.avg.de Version: 10.0.1410 / Virendatenbank: 1520/3940 - Ausgabedatum: 05.10.2011
php::bar PHP Wiki - Listenarchive