Mailinglisten-Archive |
ach nun... ich musste die Tabelle neu erstellen und beide zu PK delegieren. So hats geklappt in phpmyadmin Danke für eure Hilfe :) Schönen Abend noch..bis bald wieder...harhar ^^ Am 6. Oktober 2011 15:20 schrieb Robert Hartung <r.hartung at roberthartung.de> : > Hallo, > > das kannst du sehr wohl machen ;-) PK geht sogar über mehrere > Tabellenspalten! > > -----Ursprüngliche Nachricht----- > Von: php-bounces at phpbar.de [mailto:php-bounces at phpbar.de] Im Auftrag von > Trawell Mildor > Gesendet: Donnerstag, 6. Oktober 2011 15:13 > An: deutschsprachige PHP-Mailingliste > Betreff: Re: [php] Abfrage über Zwischentabelle > > Hallo Robert. > > Wie soll das gehen, zwei Felder mit PK ? Ich kann doch nur ein Datenfeld > als > PK definieren ? > > Gruss, Trawell > > Am 6. Oktober 2011 10:59 schrieb Robert Hartung < > r.hartung at roberthartung.de> > : > > > 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 > > > > -- > > ** Allgemeine deutschsprachige PHP-Liste: php at phpbar.de ** > > Informationen: http://www.phpbar.de > > http://lists.phpbar.de/mailman/listinfo/php > > > -- > ** 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 > > -- > ** Allgemeine deutschsprachige PHP-Liste: php at phpbar.de ** > Informationen: http://www.phpbar.de > http://lists.phpbar.de/mailman/listinfo/php >
php::bar PHP Wiki - Listenarchive