MySQL ORDER BY count() und nur 1 Ergebnis je Treffer
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
ansatz
anzahl
befehl
beispiel
code
dank
datenbank
datum
eingabe
ergebnis
http
jemand
machen
ordern
sortierung
spalte
tabelle
tragen
url
-
Hallo
wie sieht ein SQL Befehl aus (MySQL)
mit dem ich die Ergebnisse sortiert nach Anzahl gleicher Werte in einer Spalte bekomme ?
Beispiel: verschiedene User tragen URLs ein
wie erhalte ich als Sortierung die am häufigsten eingetragenen (gleichen) URLs ?
irgendwie mit ORDER BY COUNT(url) ... ? aber wie ....
und dann sollten die Einträge nicht alle ausgegeben werden,
sondern je unique URL jeweils nur die entweder zuerst oder zuletzt eingetragene URL
(die Spalte datum in Tabelle zum Link über DESC oder ASC prüfen)
jemand ne Idee wie ich das machen kann? ... Beispiele?
Danke ! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Also ich habe nicht ganz verstanden was du machen möchtest.
Möchtest du die einträge zählen und vereienen oder wie?
Weil dann würde ich dir vorschlagen einfach user eingaben suchen zu lassen und wenn sie schon vorhanden sind in einer countSpalte die Zahl um 1 erhöhen. -
Ich bin nicht sicher, ob ich das richtig verstanden habe. Bringt dies in etwa das gewünschte Ergebnis?
SELECT url, COUNT(url), MAX(datum) FROM Tabelle GROUP BY url ORDER BY COUNT(url)
Beitrag zuletzt geändert: 19.12.2011 15:16:30 von deddyh -
also nochmal ein Erklärungs-Versuch
Datenbank Tabelle mit URLs
id INT(10)
user_id INT(10)
url VARCHAR (255)
title VARCHAR(100)
...
datum VARCHAR(30)
Abfrage:
... suche aus URLs mit Sortierung nach Anzahl des Vorkommens der URLs
Ergebnis:
URL xxxxxx kommt 7 mal vor
URL yyyyyy kommt 3 mal vor
URL zzzzzz kommt 1 mal vor
... usw.
also wie mache ich es, dass ich im Ergebnis jede URL nur einmal habe zusammen mit der Anzahl ?
und nein, es ist leider keine Counter Spalte vorhanden,
sonst wäre es ja (zu) einfach :)
EDIT: Danke eddyh für den Ansatz ..... macht GROUP BY dass jede URL nur einmal im Ergebis ist ?
ich probiere es mal damit aus, Danke erstmal.
EDIT ... Danke ....funktioniert !!!! ... habe bei ORDER noch DESC eingefügt,
damit bekomme ich jetzt die am häufigsten vorkommenden URLs zuerst
:) *freu*
Beitrag zuletzt geändert: 19.12.2011 14:57:23 von seofav -
eventuel hilft dir folgende Seite weiter :
http://reeg.junetz.de/DSP/node10.html#SECTION04262000000000000000 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage