Rivimäärä selville?

Pitäisi tehdä tilasto sovellus joka näyttää monesta eri IP-osoitteesta on vierailtu sivulla yli xxx kertaa.

SELECT id FROM logi GROUP BY ip_osoite HAVING COUNT(id) > xxx

Näyttää ne id:t josta vierailu on tapatunut yli xxx kertaa, mutta tarvitsen vain lukumäärän, en muuta. Kanta on suurehko (likimain miljoona riviä), joten onko mitään muuta keinoa kuin tehdä toi kysely ja mysql_num_rows ottaa selville monta riviä tuotti?

Tuolla tavallahan mysliltä siirretään PHP:lle turhaa dataa aikasta paljon.

Kielinä mysli ja PHP, uusimmat molemmista, joten alikyselyt toimii.
4378
Äänestä

Muut lukivat myös

Vastaukset 4

Vanhimmat

Eikös tuo hoidu yhdellä lisä countilla eli:

SELECT count(1) FROM logi GROUP BY ip_osoite HAVING COUNT(id) > xxx

Äänestä
  • Ei toimi halutulla tavalla, koska tossa on GROUP BY määre joka sotkee.

    Kyselysi tulostaa
    400
    350
    550

    Tarvitsisin vastaukseksi vain 3

    Äänestä

  • Jokunen kirjoitti:

    Ei toimi halutulla tavalla, koska tossa on GROUP BY määre joka sotkee.

    Kyselysi tulostaa
    400
    350
    550

    Tarvitsisin vastaukseksi vain 3

    >Tarvitsisin vastaukseksi vain 3

    Tuohan on komennon jälkeen systeemimuuttujassa @@rowcount.

    Äänestä

  • tätä kirjoitti:

    >Tarvitsisin vastaukseksi vain 3

    Tuohan on komennon jälkeen systeemimuuttujassa @@rowcount.

    Ilmeisesti PHP käyttää tuota?
    Joten taidan käyttää tuota PHP:n omaa functiota, kun näyttäisi toimivan ihan kohtuudella suurella rivimäärälläkin.

    Äänestä

Kommentoi aloitusta


Jokunen kirjoitti:

Pitäisi tehdä tilasto sovellus joka näyttää monesta eri IP-osoitteesta on vierailtu sivulla yli xxx kertaa.

SELECT id FROM logi GROUP BY ip_osoite HAVING COUNT(id) > xxx

Näyttää ne id:t josta vierailu on tapatunut yli xxx kertaa, mutta tarvitsen vain lukumäärän, en muuta. Kanta on suurehko (likimain miljoona riviä), joten onko mitään muuta keinoa kuin tehdä toi kysely ja mysql_num_rows ottaa selville monta riviä tuotti?

Tuolla tavallahan mysliltä siirretään PHP:lle turhaa dataa aikasta paljon.

Kielinä mysli ja PHP, uusimmat molemmista, joten alikyselyt toimii.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu