Stavelin.com

Lage indexer i mysql med MAMP

Jeg har ikke funnet noen måte å lager indexer på i Sequel Pro, og med det har jeg alternativet klart; i terminalen.

Antagelsen er at mysql kjører i MAMP på OSX (10.5.8).

Åpne terminalen.
Skriv inn

/Applications/MAMP/Library/bin/mysql -uroot -p

kvitter med root-passordet som ut-av-boksen er root.

Velg en database:

mysql> USE tabellnavn;

Vis tabellene i databasen (fint å vite hva som finnes):

mysql> SHOW tables;

Sjekk om tabellen har en index:

mysql> SHOW indexes FROM 2009analyse_int;

Lag en index

mysql> CREATE INDEX minNye_index ON tabellnavn(kolonne_du_vil_lage_index_på);

Done.

PS - Note to self: Behovet for indexer dukket for min del opp når jeg skulle hente ut ca 75.000 rader fra en tabell over nettartikler, hvorav noen var duplikater. For å hente ut kun én linje per unike url gjorde jeg følgende spørring:

SELECT *, COUNT(unik_id) AS duplikat
FROM min_fine_tabell
GROUP BY unik_id
ORDER BY duplikat DESC;
 

Da kommer duplikatene (med antall større enn 1) øverst, følger alle som er unike.

2 kommentarer

  1. Bruk heller PhpMyadmin enn alle de crappy MySql-desktopklientene. Ingenting i MySQL-verden som er i nærheten av hvor uunværlig TOAD er på Oracle-plattformen.


    SELECT unik_id, COUNT(unik_id) AS duplikat
    FROM min_fine_tabell
    GROUP BY unik_id
    HAVING COUNT(unik_id) > 1
    ;

  2. Hei Harald, takk for kommentar.
    Jeg misliker PhpMyadmin sterkt. Det er treigt og klønete. Ingen hurtigtaster. Har ingen Oracle-baser her.

    Spørringen din henter kun ut de som er duplikater, ikke alt; som jeg trengte. Men den fuker til sitt bruk.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

Du kan bruke disse HTML-kodene og -egenskapene: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>