oneside Geschrieben 22. November 2007 Geschrieben 22. November 2007 Hi, Ich habe eine Tabelle mit zwei Feldern: "ObjektNr" und "Angabe" gibt es eigentlich eine Möglichkeit mit einer Abfrage alle "ObjektNr" aus der Tabelle zu holen, die einen Satz mit dem Wert X und dem Wert Y im Feld "Angabe" haben? Also hole alle Obejtknummern, die einen Satz mit Angabe 10 AND Angabe 20 haben? Vielleicht stehe ich auch gerade nur auf dem Schlauch :upps Gruß Tobias
flashpixx Geschrieben 22. November 2007 Geschrieben 22. November 2007 Hallo, meine Anmerkung, denke mal ein bisschen darüber nach, die Lösung ist einfach. Überlege Dir was in Deiner WHERE Bedingung für eine Booleanbedingung stehen muss. Deine Formulierung in Deinem Post ist schon in der richtigen Richtung, nur eine Kleinigkeit ist verkehrt HTH Phil
oneside Geschrieben 22. November 2007 Autor Geschrieben 22. November 2007 Ich habs schon danke. Hatte das Problem hier eigentlich nicht ausreichend beschrieben ist mir aufgefallen... Ich suche nicht einen Satz mit zwei Werten im Feld Angabe, sondern die ObjektNummern, für die es einen Satz mit Angabe X und einen weiteren Satz mit Angabe Y (also zwei Sätze) gibt. Die Lösung hier: SELECT ObjektNr FROM tabelle AS a1 LEFT JOIN tabelle AS a2 USING(ObjektNr) WHERE a1.Angabe=Wert AND a2.Angabe=Wert
flashpixx Geschrieben 22. November 2007 Geschrieben 22. November 2007 wie wäre es mit select * from tabelle where angabe=a or angabe=b
mackemi Geschrieben 22. November 2007 Geschrieben 22. November 2007 wie wäre es mit select * from tabelle where angabe=a or angabe=b für die es einen Satz mit Angabe X und einen weiteren Satz mit Angabe Y (also zwei Sätze) gibt. Grüße Fabian
flashpixx Geschrieben 22. November 2007 Geschrieben 22. November 2007 Hallo, sorry hab das mit der zwei übersehen. Ich würde das dann eher so machen select * from tabelle where anhang=20 UNION select * from tabelle where anahng=10 Die verknüpfung über die Tabelle selbst finde ich etwas umständlich, der Union würde praktisch Ergebnis 1 holen und einfach darunter das 2te hängen, das ganze evtl noch schön in einen View packen und dann kannst Du den wie eine Tabelle abfragen Phil
gurkenpapst Geschrieben 5. Dezember 2007 Geschrieben 5. Dezember 2007 Hallo, select * from tabelle where anhang=20 UNION select * from tabelle where anahng=10 Phil Ich würde sogar noch um folgendes erweitern: select * from tabelle where anhang=20 UNION ALL select * from tabelle where anahng=10 AND anhang != 20 [/PHP] Warum? UNION vs UNION ALL Performance | MySQL Performance Blog
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden