2012-04-05 8 views
0

Mögliche Duplizieren:
Writing an SQL query to SELECT item from the following tableSchreibe eine SELECT-Abfrage für die folgende Tabelle

Ich habe Probleme, herauszufinden, wie eine SELECT-Abfrage zu schreiben, die jede Zelle aus der Tabelle auswählt, hat mehr als einer der gleichen Zelle Wert in der Spalte. Wenn der Spaltenname beispielsweise "Autos" lautet, wählen Sie "Ford" nur, wenn "Ford" mehr als eine Zelle in der Spalte belegt.

+0

Können Sie die Tabellenstruktur und die Spalten schreiben, die zusammengenommen werden? –

+0

http://i44.tinypic.com/1zdcc9j.png .... here ein Bild der Tabelle, ich muss alle Zellen in der 'snum' Spalte auswählen, die mehr als einmal erscheinen ... (die einzige Zahl Das erscheint mehr als einmal in der snum-Spalte 3). – CSoverIT

Antwort

0

Hier ist eine Version w/o die zusätzliche Spalte:

Select cars from (select cars, count(*) as nbr from theTable group by cars) 
where nbr > 1; 
+0

Das funktioniert ganz gut, danke! Aber wie würde ich dies ändern, um einige zusätzliche Informationen wie "Autokäufer" aus einer anderen Tabelle, die mit dieser Tabelle verbunden ist, zu enthalten ... so kann ich alle Käufer anzeigen, die zwei des gleichen Typs von Auto besitzen (zwei Furten) , zwei Audi's, etc ...) – CSoverIT

2

Möglicherweise müssen Sie die Having-Klausel verwenden.

SELECT count(*), cars 
FROM table 
GROUP BY cars 
HAVING count(*) > 1 
+0

danke, das funktioniert aber nicht, schau dir den Bildlink im Kommentar an .... – CSoverIT

+0

@CSoverIT Könntest du bitte über den Fehler/das falsche Ergebnis klären? –

+0

Die Syntax scheint falsch zu sein, wenn ich versuche, diese Logik in Access SQL zu verwenden. Die andere Antwort funktioniert jedoch. – CSoverIT

Verwandte Themen