28. Juni 200124 j Ich hab da ein Problem: Ich muß mit PHP(da hab ich noch sehr wenig Ahnung von) oder SQL(auch nicht sehr viel mehr) folgendes machen: Ich hab folgende Tabelle Primärschlüssel | Wert1 | Wert2 ------------------------------- 1 | 12 | ? 2 | 2 | ? 3 | 13 | ? 4 | 12 | ? 5 | 23 | ? 6 | 9 | ? 7 | 12 | ? 8 | 13 | ? Nun soll folgendes geschehen: alle Datensätze, in denen in der Spalte Wert1 ein Wert mehr als 1 Mal vorkommt (die 12 kommt z.B. 3 Mal vor, die 13 2 Mal) sollen ausgegeben werden. Will also folgendes erhalten: 1 | 12 | ? 4 | 12 | ? 7 | 12 | ? und: 3 | 13 | ? 8 | 13 | ? ... nur wie?! *Kopf auf Tisch hämmer...*
28. Juni 200124 j Wenn ich das richtig verstehe und mein Humble SQL dafür auf Anhieb reicht: SELECT * FROM TABELLE WHERE COUNT(WERT1) > 1 ORDER BY PRIMAERSCHLUESSEL Hope it helps, Daniel
28. Juni 200124 j <BLOCKQUOTE><font size="1" face="Verdana, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von captainhook: <STRONG>SELECT * FROM TABELLE WHERE COUNT(WERT1) > 1 ORDER BY PRIMAERSCHLUESSEL </STRONG>
28. Juni 200124 j wie wärs mit diesem statement? select primärschlüssel, wert1 from tabelle1 group by wert1 having count(wert1) > 1
28. Juni 200124 j <BLOCKQUOTE><font size="1" face="Verdana, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von hades: <STRONG>wie wärs mit diesem statement?</STRONG>
29. Juni 200124 j was macht denn dieses group by? ich kann mit den erklärungen aus dem buch nix anfangen ... danke für eure hilfe, ich probier das gleich mal aus!!
29. Juni 200124 j Das tuts irgendwie nicht: select antennen.aa_node_id, antennen.bts_ci from antennen group by antennen.bts_ci having count(antennen.bts_ci) > 1; Die Fehlermeldung: ERROR at line 2: ORA-00979: not a GROUP BY expression Hääääh?!
29. Juni 200124 j hi poldi, schön, dass man aus deiner fehlermeldung jetzt auch dein verwendetes dbms erfährt -oracle oracle möchte hier eine aggregatfunktion haben. (gefunden in: online hilfe oracle client 8.0.5 für nt/win2k) select feld1, [aggregatfkt(feld2)] from schemaname.tabelle group by feld1 hilft aber in deinem fall nicht weiter, nimm wolles lösung mit der temporären tabelle. gruss [ 29. Juni 2001: Beitrag editiert von: hades ]
29. Juni 200124 j habs hinbekommen: select max(bts_ci) from antennen group by bts_ci having count(bts_ci) > 1; so funktioniert es ... warum auch immer.
29. Juni 200124 j weil max eine der aggregatfunktionenen ist aggregatfunktionen: sum min max count first last
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.