kostenloser Webspace werbefrei: lima-city


SQL Abfrage Count

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    programtools

    programtools hat kostenlosen Webspace.

    Hi,

    ich möchte eine Datenbank-abfrage machen, weiss aber nicht genau wie ich mein Ziel erreiche:

    Ich habe eine Tabelle nach dem Muster:
    { object_id | ... }

    für eine object_id können beliebig viele Datensätze vorhanden sein.

    Ich möchte nun in meiner Abfrage:
    1) die Ausgabe der object_id
    2) Sortiert danach, wie oft die object_id vorkam bzw. die Anzahl der Datensätze
    3) Limit auf x

    Beispiel:
    Tabelle (13 Datensätze):
    object_id
    1
    1
    1
    2
    2
    1
    4
    4
    4
    5
    4
    1
    2

    Limit: (beispielsweise 2)

    object_id x Anzahlvorhanden: 1x5, 2x3, 4x4, 5x1


    Sortiert nach Anzahl: 1, 4, 2, 5

    Ausgabe (Mit Limit 2): 1, 4

    Ich hoffe Ihr könnt mir helfen eine Abfrage zu finden die das möglichst einfach erledigt!

    LG & Danke



    Beitrag zuletzt geändert: 28.5.2014 14:55:39 von programtools
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Also hier mal, wie man etwas zählen kann, sortieren und ein Limit setzt:
    COUNT(`Spalte1`) ORDER BY `Spalte2` LIMIT 5


    So solltest du das hinkriegen, oder? Ansonsten frag noch mal nach.
  4. Autor dieses Themas

    programtools

    programtools hat kostenlosen Webspace.

    c143 schrieb:
    Also hier mal, wie man etwas zählen kann, sortieren und ein Limit setzt:
    COUNT(`Spalte1`) ORDER BY `Spalte2` LIMIT 5


    So solltest du das hinkriegen, oder? Ansonsten frag noch mal nach.


    Das ist leider sehr weit entfernt von meinem Problem.

    Ich möchte nicht die Datensätze zählen, sondern die ID abfragen und nach Häufigkeit sortieren.

    Du hast zudem in deinem BSP Spalte1 und Spalte2, ich habe in meinem Beispiel ja die Tabelle aufgezeigt, und es ist lediglich eine Spalte, nömlich object_id relevant!!

    Falls jemand eine Lösung für mein Problem hat wäre ich sehr dankbar,
    ev etwas wie:
    ORDER BY COUNT(object_id)


    MFG
  5. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    Eventuell gibt dir das hier Inspiration. Wenn nicht: nachfragen. Bei der Abfrage wurde nach der Anzahl der abgegebenen Stimmen sortiert.

    Beitrag zuletzt geändert: 28.5.2014 15:04:48 von hackyourlife
  6. Autor dieses Themas

    programtools

    programtools hat kostenlosen Webspace.

    hackyourlife schrieb:
    Eventuell gibt dir das hier Inspiration. Wenn nicht: nachfragen. Bei der Abfrage wurde nach der Anzahl der abgegebenen Stimmen sortiert.


    Super vielen Dank!!,
    mit GROUP BY habe ich genau das erreicht was ich wollte!!

    Falls jemand auf den Thread stößt nochmal mein Resultat:
    SELECT object_id, COUNT(object_id) AS cnt FROM my_table GROUP BY object_id  ORDER BY cnt DESC LIMIT 5


    Grüße
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!