Ich habe eine Tabelle mit den folgenden Daten.
Tabellenname: myTable
prodID catNo variable1 variable2
1 20 Cat Blue
2 10 Cat Rot
2 15 Cat Grün
2 20 Cat Schwarz
3 20 Cat Gelb
4 10 Cat Orange
4 15 Cat Braun
4 20 Cat Schwarz
5 30 Cat Pink
Ich möchte alle Spalten aus meiner Tabelle auswählen, bei denen Folgendes zutrifft
"(prodID = 2 und catNo = 10) UND (prodID = 2 und catNo = 15)". Dies bedeutet, dass nur die beiden Zeilen zurückgegeben werden sollen, wenn beide Bedingungen erfüllt sind und es wird nichts zurückgegeben, wenn beide Zeilen nicht vorhanden sind. Also wird meine Ergebnistabelle so aussehen.
Tabellenname: results
prodID catNo variable1 variable2
2 10 Cat Rot
2 15 Cat Grün
Ich habe versucht, bedingte if-Anweisungen zu verwenden, aber ich kann sie nicht im SQL zum Laufen bringen. Meine aktuelle Lösung besteht darin, alle Zeilen mit prodID = 2 zurückzubekommen und dann mit PHP die if-Anweisung zu verwenden, um zu entscheiden, was angezeigt werden soll. Dies funktioniert jedoch nicht mit der paginierten Ergebnisanzeige, die ich entworfen habe, da mein Limit die Anzahl der Ergebnisse pro Seite verfälschen wird. Ich weiß, dass ich 'HAVING COUNT rows = 2' verwenden könnte, aber ich bin mir nicht sicher, wie ich es formulieren soll.