Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [mysql] ORDER BY doppio

    Ciao

    ho una tabella con 100 record e vorrei mostrare solo 3 record alla volta.
    (e fin qui LIMIT 3) - ok

    Solo che vorrei estrarli random!
    ( OrdER BY RAND()) - ok

    Pero vorrei che tra quelli estratti random la successione sia in base all'id!!!

    Cioè:

    1 rec1
    2 rec2
    3 rec3
    4 rec4
    5 rec5
    6 rec6
    7 rec7

    es.
    rec1
    rec5
    rec7

    estratti random e ordinati per id.

    ho provato ORDER BY RAND(), id
    ma li mette a caso... bohh

    HELP! Ciao!

  2. #2
    RAND() ti rende un valore assoluto in modo random, coe' .... non piu' riordinabile ulteriormente. Altrimenti che random sarebbe?

    In altre parole se ordini per un valore univoco e questo valore viene reso casuale non puo' esserci un secondo livello di ordinamento. Non potrebbe esserci in nessun caso un secondo livello dopo un id.

    Potresti ovviare con una tabella temporanea di intermezzo. Scarichi su questa tabella il numero di record voluto e poi lo lo estrai con l'ordinamento che ti pare.

    Ma con il LIMIT 3 ogni volta che fai un refresh della pagina per pescare ulteriori record, potresti riprendere gli stessi di prima.


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

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.