Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    Order By Stringa As Numero

    Salve,

    Nella mia tabella ho una colonna "varchar" composta da valori numerici ma anche da valori con lettere:

    5
    A01
    A03
    A02
    4
    3


    Quando faccio order by non vengono ordinati come vorrei.
    In giro ho trovato la soluzione per i numero ovvero faccio ORDER BY colonna+0 e funziona, ma quando ci sono le lettere non funziona più.
    Come posso ordinarli in modo tale che diventi:

    A01
    A02
    A03
    1
    2
    3
    4
    5

    etc.. etc.. ???

  2. #2
    come da regolamento indica con quale db stai lavorando

  3. #3
    scusate.

    mysql e sqlite3

  4. #4
    prova con

    codice:
    ORDER BY CASE Colonna
             WHEN LIKE 'A*' THEN 1
             ELSE 2
             END,
             Colonna
    non so se funziona, visto che c'è una LIKE...

  5. #5
    no. non mi funziona

  6. #6
    Originariamente inviato da bendervinicio
    no. non mi funziona
    aridajela, eccone n'antro

    che vuol dire non funziona? non ordina? dà errore? ti dà la scossa? il gatto si lamenta? la lavatrice centrifuga male?

  7. #7
    l'errore che da è

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIKE 'A*' THEN 1
    ELSE 2
    END,
    f.numero+0' at line 4

  8. #8
    Copia tutta la query che usi così capiamo di più

  9. #9
    SELECT * FROM tabella1 s INNER JOIN tabella2 f ON s.idFigurina=f.id WHERE s.cenno=0 AND s.idUtente=$utente_id

    ORDER BY CASE f.numero
    WHEN LIKE 'A*' THEN 1
    ELSE 2
    END,
    f.numero+0

  10. #10
    OK, ho capito. C'è un errore nella parte dell'ordinamento che deve essere così:

    codice:
    ORDER BY CASE
    WHEN f.numero LIKE 'A*' THEN 1
    ELSE 2
    END,
    f.numero+0
    Mancava f.numero dopo WHEN e non serve dopo CASE

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.