SQL-select-Zeilen mit nur einen bestimmten Wert in Ihnen
Ich habe eine Tabelle als solche
Col 1 Col 2 Col 3
1 A 1
2 A 2
3 B 1
4 C 1
5 C 2
6 D 1
Wie erhalte ich dann nur einzigartige Zeilen, die Spalte 3 = 1?
Möchte ich, um die Zeilen 3 und 6 (Spalte 2 = B und D jeweils). Ich will nicht noch Ein C, da Sie Col 3 = 2.
Habe ich versucht, etwas entlang der Linien von:
select col 2 from table group by col 2 having count(col 3) = 1
Aber das bringt nur bis Spalte 2 für die Ergebnisse, ich bin also unsicher, wenn Col 3 Inhalt = 1 ist oder nicht.
EDIT: Sorry Jungs, vielleicht habe ich nicht formuliert meine Frage. Ich möchte alle Zeilen von Spalte 2 enthalten, nur in Spalte 3 = 1 UND NUR 1.
So, wenn ich versuchte, WO Col 3= 1
, würde es wieder 4 Zeilen, weil Einer hat 1. Aber da hat auch eine Zeile, wo Spalte 3 = 2, ich will nicht, dass dasselbe für C. Aus dieser Beispiel-Tabelle, möchte ich das Ergebnis, dass nur 2 Zeilen, B und D.
Meine Beispiel-Tabelle ist ein Beispiel, eigentlich habe ich über 5000 Zeilen filtern durch, sonst würde ich ja tun, wie Sie Jungs vorgeschlagen haben 🙂
- wählen Sie * aus Tabelle wo col3=1
- t ' is Zeit zum Lesen einer sql-tutorial: w3schools.com/sql/default.asp
- Sorry, Jungs, es ist nicht so einfach wie es scheint. Es sei denn, ich bin fehlt etwas abgeleitet werden, dass die SQL-Abfrage, indem AllisonC.
- Es ist nicht gut, das zu ändern, ganze Frage nach ein paar Minuten macht, dass die meisten Antworten falsch. Besser, Sie Fragen neuen.
- Ich habe nicht geändert, meine Frage, aber es scheint, ich habe anfangs geschrieben ist es in einer solchen Weise, dass Menschen missverstanden mit Ihren Antworten, so ich brauchte, um hinzuzufügen Klärung. Ich entschuldige mich, wenn diese verursacht hat Sie Probleme.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Oder
HAVING AVG(col3) = 1
b.col3 <> 1
am Ende?Dem, was Sie wahrscheinlich suchen, ist WO - Klausel.
Es ist ein bisschen schwer, genau zu wissen, was Sie versuchen zu bekommen, aber das ist meine beste Vermutung:
getestet mit MS SQL2008 und die folgenden (also wenn meine Antwort nicht die richtige ist, es kann halp anderen test ihrigen...):