suorituskyky

ongelma...

Taulun rakenne on:

id (int),
etunimi (varchar),
sukunimi (varchar),
postinumero (int)

indeksit (etunimi, sukunimi ja postinumero)

Kun haen: where etunimi like "virt%" or sukunimi like "virt%"

niin tulos tulee salaman nopeasti, mutta jos haen:

where postinumero = 123 and (etunimi like "virt%" or sukunimi like "virt%")

niin kestää, kestää ja kestää? Miksi? EIkö postinumero rajoittaa tuloksien määrän aika paljon? Miksi se sitten kestää kauemmin?

MySQL 5

1

302

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Qwe23

      "indeksit (etunimi, sukunimi ja postinumero)"

      Siis onko sulla kolme eri indeksiä?

      Ennemmin kannattaa tehdä yhtenäinen (täys-indeksi) indeksi esim postinumero, etunimi, sukunimi ja id, tällöin kaikki tieto löytyy indeksistä suoraan, toki täys-indeksin haittana on pienoinen tilantarpeen kasvu, mutta nykyään tuo levytila halpaa joten usein tuota täys-indeksiä kannattaa käyttää.

      Ja indekseissä on muistettava, että jos sulla on vääränlaisia indeksejä niin MySQL saattaa yrittää ensiksi etsiä niistä tietoa ellei löysy niin joudutaan levylukemaan kaikki rivit ja se on hidasta.

      Ellen väärin muista niin MySQL ei käytä indeksejä LIKE % hauissa ollenkaan, joten siksi ne aika hitaita. Miksi edes käytät niitä?
      Sillä tuosta kyselystä päätellen http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html olisi omiaan tuohon.

      Kokeileppas EXPLAIN kyselysi, tuo näyttää tietoa miten MySQL hakee (käyttääkö indeksejä jne...), ellet sitä ymmärrä niin liitäppäs se tänne silloin on helpompakin vastata täsmällisemmin.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Miksi persuilla ei ole firmoja?

      Kuten vasemmisstolaisilla, esim. Sannalla MA\PI. Eikö ole aika erikoista?
      Maailman menoa
      82
      7086
    2. Persut hommasivat Suomeen 35 000 pientä lasta v. 2015

      Onko Riikka Purra nyt tavoittelemassa tätä samaa historiallista persujen utopiaa? Purram kaksinaamaisessa pelissä vaadit
      Maailman menoa
      26
      7053
    3. Purran tuhoja tuskin saadaan koskaan korjatuksikaan

      Purra on aiheuttanut Suomen taloudelle karmaisevat tuhot. Sen lisäksi Purra on ajanut myös suuren osan Suomen kansasta k
      Maailman menoa
      108
      6157
    4. Persujen kaksoisstandardit: Räsäsen uhkailu paha, Virran uhkailu hyvä

      Tässä taas nähdään kuinka kaksinaamaista porukkaa persut ovat. Mitäs persut tähän?
      Maailman menoa
      45
      5394
    5. Miksette persut irtisanoudu Kirkin lausunnoista?

      Kirkhän muun muassa vaati raiskattuja naisia pidättäytymään abortista ja vaimoja alistumaan aviomiestensä tahtoon. Mik
      Maailman menoa
      84
      5228
    6. Demarikultin uhri kertoo

      Demarikultin uhri kertoo: “En saanut mennä edes suihkuun ilman lupaa” – Seksuaalisen hyväksikäytön uhri kertoo vuosistaa
      Maailman menoa
      63
      5185
    7. Miksi vasemmistolaiset eivät omista yhtään firmaa?

      Vasemmistolaiset eivät omista yhtään firmaa joka työllistäisi ihmisiä. Miksi? No siksi, että jos vasemmistolainen perus
      Maailman menoa
      40
      5098
    8. Sanna valittiin Euroopan huonoimmaksi pääministeriksi

      Sannan kaudella Suomi oli ainut maa missä bkt laski. Kannattaa huomata, että luvut valitsi Sannan huonoimmaksi. Ihmiset
      Maailman menoa
      27
      4585
    9. Purran vuoro kiihoittua Lepomäen sääristä

      "Ulkoministeri Elina sanoo, ettei muuta pukeutumistaan sen mukaan, kenet tapaa, ja että hän ei suostuisi peittämään kasv
      Maailman menoa
      16
      3467
    10. Vasemmistolaiset paskat eivät nousseet seisomaan kun Akaan kaupunginvaltuusto

      vietti hiljaisen hetken Charlie Kirkin muistoksi https://www.aamulehti.fi/uutiset/art-2000011523016.html
      Maailman menoa
      300
      3380
    Aihe