Visualizzazione dei risultati da 1 a 7 su 7

Discussione: max var char

  1. #1
    Utente bannato L'avatar di Fronte
    Registrato dal
    Dec 2010
    Messaggi
    358

    max var char

    Buongiorno a tutti ,,

    Non riesco a capire una cosa su sql ?

    Facendo una query del tipo :

    $sql = "SELECT * FROM `tab` where
    data = '$datapost' or data ='$dat' ";

    vorrei ordinare i record su un campo varchar "ntit" che contiene numeri consecutivi ,,

    ma ci sono anche numeri tipo 544-2 o 423-9 , oppure numeri che nel DB ,
    ho inserito alternandoli con altri ,

    come posso fare esguire un ordinamento numerico ,,

    ho provato anche a finire la select con "order by ntit ASC " oppure DESC
    ma mi inizia l ' ordine da 99 o 100 , e mi incasina tutto la numerazione
    es: dopo il 39 ci mette il 4 e cosi via ,,,

    GRAZIE

  2. #2
    Se il campo è varchar è ovvio che il "4" venga dopo il "39" e dubito che avendo valori del tipo "544-2" o "423-9" tu possa fare un ordinamento numerico dato che questi ultimi non sono numeri.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    quelli sono numeri solo per te....per il db è testo quindi il 4 viene dopo il 39... devi castarli a numeri per fare l'ordinamento, e quel 544-2 o simile ti frega alla grande o cmq complica le cose
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  4. #4
    bhè allora potrebbe usare ORDER BY data DESC
    Social Network in costruzione.. Misto tra Twitter e Facebook.. Twitbook o facetter?

  5. #5
    Originariamente inviato da 0-c00l
    bhè allora potrebbe usare ORDER BY data DESC
    beh magari non rispecchiava l'ordinamento voluto per questo ha chiesto la storia del varchar...
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  6. #6
    Prova così:

    Codice PHP:
    $sql "SELECT * FROM tab WHERE data = '$datapost' or data ='$dat' ORDER BY CAST(ntit AS SIGNED) 
    Ho utilizzato la funzione CAST()
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Utente bannato L'avatar di Fronte
    Registrato dal
    Dec 2010
    Messaggi
    358
    Mi verrebbe da dire il CAZ :..



    La funzione CAST () non la conoscevo ...
    Fila Tutto ... alla perfezione,,,,

    Ringrazio tutti special Thank to Satifal ' n Santino

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.