Visualizzazione dei risultati da 1 a 3 su 3

Discussione: [SQL] con UNION ALL

  1. #1
    Utente di HTML.it L'avatar di kodode
    Registrato dal
    Sep 2002
    Messaggi
    1,896

    [SQL] con UNION ALL

    ciao a tutti!

    io ho questa tabella

    id schema_id - descrizione - posizione
    1 - 1 - AAAAA - 1
    2 - 1 - BBBBB - 0
    3 - 1 - CCCC - 0
    4 - 1 - DDDDD - 4
    5 - 1 - EEEEEE - 2
    6 - 1 - FFFFFF - 3

    e vorrei ordinare l'estrazione per posizione in modo da ottere:

    1 - AAAAA - 1
    5 - EEEEEE - 2
    6 - FFFFFF - 3
    4 - DDDDD - 4
    2 - BBBBB - 0
    3 - CCCC - 0


    ho provato cosi :

    (SELECT * FROM `nome_tabella` WHERE schema_id='1' AND posizione > 0 ORDER BY posizione)
    UNION ALL
    (SELECT * FROM `nome_tabella` WHERE schema_id='1' AND posizione = 0 )

    ma ottengo:

    1 - AAAAA - 1
    4 - DDDDD - 4
    5 - EEEEEE - 2
    6 - FFFFFF - 3
    2 - BBBBB - 0
    3 - CCCC - 0

    qualche idea? grazie...

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    select *,if(posizione = 0,x,posizione) as ordinamento from tabella
    where schema_id = 1
    order by ordinamento
    al posto di x metti un numero superiore al valore massimo che può assumere il campo posizione.

  3. #3
    Utente di HTML.it L'avatar di kodode
    Registrato dal
    Sep 2002
    Messaggi
    1,896
    fantastico grazie!!!

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.