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

    Query con il primo ordinamento forzato

    Ciao a tutti,
    ho un dilemma che non riesco a sciogliere

    Devo fare una query forzandogli solo un parametro per l'ordinamento e lasciando libertà al resto, ma non so come fare (e se è possibile farlo).

    Parto subito con un esempio.

    Facciamo conto che ho articoli su Roma, Milano, Firenze, Torino, Napoli.
    Ora vorrei fare una select unica che prima di tutto mi mostri gli articoli di Roma, poi tutti gli altri.

    E' possibile??
    Perchè uso Maxthon? | Mi piace questa chat

  2. #2
    Magari qualcuno mi smentirà ma non credo sia possibile fare quello che chiedi. E' possibile solo ordinare i risultati in base ad una chiave in maniera ascendente o discendente.
    In alternativa potresti effettuare una prima select che tira fuori tutti i risultati per Roma e poi una select per tutti gli altri.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    mmm peccato.

    Quindi dovrei fare per forza 2 query e matchare il risultato all'interno di un array???
    Perchè uso Maxthon? | Mi piace questa chat

  4. #4
    Utente di HTML.it L'avatar di Kdes
    Registrato dal
    Oct 2006
    Messaggi
    171
    O in alternativa, puoi aggiungere un codice nel campo di selezione nella tabella.

    Es: Roma, 1
    milano,2
    torino,2
    napoli,3

    a quel punto il codice diventa elemento di selezione.

    Puramente fantasia da programmatore stile old.......


    Non chiedetemi quanti anni ho!!!!

  5. #5
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    non vedo perchè non fare 2 query
    comunque potresti anche fare qualcosa del genere

    esegui
    select * from tabella group by città

    poi segue pseudocodice
    Codice PHP:
    $primi="";
    $ultimi="";
    while(
    $row=mysql_fatch_row($result))
    {
           if(
    $row['città']=='Roma')
           {
                
    // $primi.=        
           
    }
           else
           {
                
    // $ultimi.=
            
    }
    }
    echo 
    $primi;
    echo 
    $ultimi

  6. #6
    @Kdes: poi quando dovrò dare priorità a Milano???

    @bstefano: Non ho afferrato alla grande il tuo codice, ma penso di aver capito il concetto.


    In realtà speravo di potermela cavare tutta in una query (magari con una subquery) invece mi sa proprio che dovrò adottare qualche soluzione lato php.

    Perchè uso Maxthon? | Mi piace questa chat

  7. #7
    HO TROVATO!!!!!
    Ero sicuro che fosse possibile, non poteva essere altrimenti


    SELECT * FROM citta ORDER BY if(citta= 'Roma',0,1), citta ASC

    Yeeeeeeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaa aa

    Perchè uso Maxthon? | Mi piace questa chat

  8. #8
    Utente di HTML.it L'avatar di Kdes
    Registrato dal
    Oct 2006
    Messaggi
    171
    Grande....bukoswki, vedi che i codicilli.... ti hanno permesso di ragionare......

    Non chiedetemi quanti anni ho!!!!

  9. #9
    Originariamente inviato da Bukowski
    HO TROVATO!!!!!
    Ero sicuro che fosse possibile, non poteva essere altrimenti


    SELECT * FROM citta ORDER BY if(citta= 'Roma',0,1), citta ASC

    Yeeeeeeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaa aa

    Perfetto, non si finisce mai di imparare, ora ne so di più anche io.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

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.