Pro-Linux.de

Pro-Linux

Pro-Linux Diskussions- und Hilfeforum
Aktuelle Zeit: 19. Nov 2018 10:23

Alle Zeiten sind UTC+01:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: SQL Abfrage - Häufigkeit ermitteln
BeitragVerfasst: 18. Apr 2008 11:03 
Offline

Registriert: 25. Mär 2008 12:50
Beiträge: 127
Hi,

ich benötige mal ein paar Denkanstöße zu einer SQL-Abfrage. Ich habe eine Datenbank, in der kommen bestimmte Zahlenwerte mitunter mehrfach vor. Die Zahlenwerte selber sind nicht vorherzusagen und aus einem so großen Wertebereich, dass man nicht alle möglichen Werte durchprobieren muss.

Von den mehrfach vorkommenden Werten will ich jetzt wissen, welche 10 Werte am häufigsten vorkommen und wie häufig das jeweils der Fall ist.

Hat jemand einen Tipp wie sowas zu realisieren ist?

_________________
http://www.kaufkauf.net - nie wieder Einkäufe vergessen!


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 18. Apr 2008 12:27 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
Ausschließlich mit SQL geht das nicht.

Also erst per SQL sortieren, dann die Ausgabe in "uniq -c" reinstopfen, dann das Ergebnis mit "sort" sortieren.

Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 18. Apr 2008 12:53 
Offline

Registriert: 25. Mär 2008 12:50
Beiträge: 127
Hm, sowas wollte ich eigentlich vermeiden, da die Menge an Daten nicht eben klein ist. Und jedes mal einen kompletten Abzug der Tabelle zu ziehen (auch wenn es nur eine Spalte ist), ist leider doch etwas rechenintensiv...

_________________
http://www.kaufkauf.net - nie wieder Einkäufe vergessen!


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 28. Apr 2008 9:44 
Offline

Registriert: 12. Feb 2001 15:50
Beiträge: 100
Wohnort: Mainz
Code:
SELECT Count(Dingsda.derBetreffendeZahlenwert) AS Anzahl, Dingsda.derBetreffendeZahlenwert FROM Dingsda
GROUP BY Dingsda.derBetreffendeZahlenwert
ORDER BY Count(Dingsda.derBetreffendeZahlenwert) DESCENDING
Wenn Dein SQL-Server jetzt noch ein
Code:
SELECT TOP 10 
unterstützt, wird es perfekt ...

_________________
Du hast keine Chance, aber nutze sie!


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 28. Apr 2008 11:58 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
Stimmt, man kann ja mit GROUP BY die Tabelle selektiv kippen. Danke Feldsee, wieder was gelernt.

SELECT TOP 10 kann man übrigens mit der "LIMIT"-Direktive erreichen.

Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 

Alle Zeiten sind UTC+01:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de