Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: ordinamento sql

  1. #1

    ordinemento sql

    ciao
    sto usando sql server. vorrei fare una query semplice ma un ordinamento difficile, del tipo...
    ho un campo inv stringa tipo,112, a456, ecc..
    vorrei ordinare i record tramite questo campo ma non so come fare.

    se faccio...

    ...
    order by inv ... ovviamente ordina utilizzando le regole di ordinamento per stringhe, ma io vorrei utilizzasse le regole dei numeri mettento 1,2,3,....,1101,...a1,a2,.... ecc.

    si può fare qualcuno ha idee???

  2. #2

  3. #3
    allora... il mio campo inv (nvarchar) ha i seguenti valori:
    1254
    123
    5566
    B689
    A456
    ecc...

    devo scrivere una query tipo:

    select * from mytabella order by (
    .....
    .....
    una funzione che converta il testo in numero e lo ordini
    nel seguente modo:
    123
    1254
    5566
    A456
    B689
    )

    sarebbe l'ideale farlo direttamente nel db....

  4. #4
    se tu adesso fai ORDER BY INV ASC cosa ottieni?

  5. #5
    viene ordinato secondo l'ordinamento dei caratteri quindi
    111
    viene prima di
    2

    eccetere
    se uso la funzione convert(INVN) mi da un errore perchè c'è all'interno della stringa un carattere.

  6. #6

  7. #7
    ms sql server 2000

  8. #8
    ok prova con

    codice:
    SELECT RIGHT('    ' + campo, 4) AS campo_ordine, altri campi
    FROM tabella
    ORDER BY 1 ASC
    ho assunto che il campo sia di 4 posizioni. diversamente cambia il numero e il numero di spazi tra apici nella RIGHT

  9. #9
    potrebbe essere ma...
    non è detto che il primo char sia sempre una lettera può essere un numero.

  10. #10
    scusa forse ho scritto un cazz...
    adesso provo, anche se non ho ben capito il senso...

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.