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

    [My-Sql] aiuto per select

    Buon pomeriggio, ho un tabella di notizie che a seconda della Posizione (1,2,...10), le notizie vengono visualizzate nell'ordine dato dal campo Posizione, in questo modo:
    codice:
    SELECT * FROM TB_NOTIZIE where Posizione IN (1,2,3,4,5,6,7,8,9,10) order by Posizione asc LIMIT 0,12
    //sarebbe corretto fare cosi: 
    SELECT * FROM TB_NOTIZIE where Posizione <> 0 order by Posizione asc LIMIT 0,12
    Però vorrei che la select, potesse tirar fuori oltre ai 10 record ordinati anche gli ultimi 3 record che hanno nel campo Posizione valore 0 'zero'.

    Come posso fare?
    grazie mille.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    1,469
    banalmente con una
    UNION

  3. #3
    e cioè?scusa la mia altissima ignoranza...

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    1,469
    select quello_che_vuoi from blablabla order by... limit...
    UNION
    select quello_che_vuoi from ... order by ... limit...

  5. #5
    ok...capito:
    codice:
    SELECT *
    FROM TB_NOTIZIE
    WHERE Posizione IN (1,2,3,4,5,6,7,8,9,10)
    
    
    UNION
    
    SELECT *
    FROM TB_NOTIZIE
    WHERE Posizione = 0
    order by Posizione DESC, dDataIns desc LIMIT 0,13
    alla fine il tutto se cosi è corretto, non si poteva fare anche in questo modo?
    codice:
    SELECT * FROM TB_NOTIZIE where Posizione IS NOT NULL order by PosizioneNews Desc, dDataIns desc LIMIT 0,13
    grazie mille...

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    1,469
    Originariamente inviato da ANTAGONIA
    ok...capito:
    codice:
    SELECT *
    FROM TB_NOTIZIE
    WHERE Posizione IN (1,2,3,4,5,6,7,8,9,10)
    
    
    UNION
    
    SELECT *
    FROM TB_NOTIZIE
    WHERE Posizione = 0
    order by Posizione DESC, dDataIns desc LIMIT 0,13
    alla fine il tutto se cosi è corretto, non si poteva fare anche in questo modo?
    codice:
    SELECT * FROM TB_NOTIZIE where Posizione IS NOT NULL order by PosizioneNews Desc, dDataIns desc LIMIT 0,13
    grazie mille...
    non ne ho idea, francamente sto programmando e adotto pochi cicli-cervello per rispondere

    ma la risposta in generale è no, o meglio UNION si utilizza quando non basta una semplice condizione OR (il che al 99% riguarda l'utilizzo di "trucchetti" di order by col desc, per mysql)

  7. #7
    ti ringrazio
    un'altra domanda: devo inserire valore 1 nel campo "quantita_bonus", questo campo deve essere di tipo int(1) oppure tinyint(1)?
    grazie ancora...buona giornata

  8. #8
    Originariamente inviato da ANTAGONIA
    ti ringrazio
    un'altra domanda: devo inserire valore 1 nel campo "quantita_bonus", questo campo deve essere di tipo int(1) oppure tinyint(1)?
    grazie ancora...buona giornata
    Dovresti capirlo da te.... tinyint occupa 1 byte, int 4. Al tuo buon cuore....

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

  9. #9
    perfetto grazie a tutti della collaborazione....

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 © 2026 vBulletin Solutions, Inc. All rights reserved.