Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    405

    [MySql] Riordinare indice

    Ciao a tutti
    Ho una tabella cosi composta:

    codice:
    id -> contatore
    nome -> varchar(255)
    url -> varchar(255)
    con i seguenti dati:

    codice:
    1 | primo | www.primo.it
    2 | secon | www.secondo.it
    3 | terzo | www.terzo.it
    4 | quart | www.quarto.it
    ora da una pagina php li visualizzo cosi come li ho mostrati dal primo all'ultimo...
    ora essendo questo un elenco di siti internet inseriti non vorrei far vedere nelle prime posizioni sempre gli stessi....esiste un modo per "riordinare" l'indice?.... insomma come mischiare i vari record

    grazie

  2. #2
    utilizza rand()

    ..... order by rand()

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    405
    Originariamente inviato da piero.mac
    utilizza rand()

    ..... order by rand()

    non è distruttivo in termini di prestazioni??

    non è meglio magari fare un campo numerico dove dentro ci andrò a mettere dei numeri che stanno ad identificare la posizione.....e poi faccio ORDER BY tabella.posizione

    ??

  4. #4
    Originariamente inviato da dail
    non è distruttivo in termini di prestazioni??

    non è meglio magari fare un campo numerico dove dentro ci andrò a mettere dei numeri che stanno ad identificare la posizione.....e poi faccio ORDER BY tabella.posizione

    ??
    distruttivo??? se hai questa convinzione fai delle prove.

    se aggiungi un campo che identifica una posizione poi dovrai modificare il contenuto del campo per cambiare l'ordine. Altrimenti ci sara' sempre lo stesso ordinamento.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    405
    Originariamente inviato da piero.mac
    distruttivo??? se hai questa convinzione fai delle prove.

    se aggiungi un campo che identifica una posizione poi dovrai modificare il contenuto del campo per cambiare l'ordine. Altrimenti ci sara' sempre lo stesso ordinamento.
    si si infatti... io voglio cambiare l'ordine ogni settimana... no ad ogni query.

    se faccio questo campo numerico...secondo te è meglio creare un indice(INDEX) ?


    Grazie

  6. #6
    Originariamente inviato da dail
    si si infatti... io voglio cambiare l'ordine ogni settimana... no ad ogni query.

    se faccio questo campo numerico...secondo te è meglio creare un indice(INDEX) ?


    Grazie
    Ogni volta che eseguirai un update l'indice verra' rifatto. Non credo tu debba estrarre migliaia di record ogni volta. Metti l'indice ma non primario, visto che l'ordinamento lo devi cambiare sovente. Oppure non metterlo .... non credo cambi molto con tre campi fino a qualche migliaio di record.

    Prova ad eseguire DECRIBE sulla tua query SELECT e vedi quando usa l'indice e quando no. Potrebbe essere inutile metterlo. Provare e' sempre il migliore approccio ai problemi

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    405
    Originariamente inviato da piero.mac
    Ogni volta che eseguirai un update l'indice verra' rifatto. Non credo tu debba estrarre migliaia di record ogni volta. Metti l'indice ma non primario, visto che l'ordinamento lo devi cambiare sovente. Oppure non metterlo .... non credo cambi molto con tre campi fino a qualche migliaio di record.

    Prova ad eseguire DECRIBE sulla tua query SELECT e vedi quando usa l'indice e quando no. Potrebbe essere inutile metterlo. Provare e' sempre il migliore approccio ai problemi
    ok ti ringrazio

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.