Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310

    natsort (di php) in mysql

    Codice PHP:
    select from table order by riferimento

    esiste una maniera per fare questo order usando una funzione (in mysql, ammesso che esista) che replichi il funzionamento di natsort di php?

    vorrei applicare il natsort sul campo riferimento..
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  2. #2
    ciao
    scusa ma da quello che so io la differenza tra sort e natsort stà nel fatto che il primo elenca in ordine di inserimento ( che immagino sia l'Id della tua tabella) mente il secondo ordina per valore crescente ( che sarebbe il riferimento sulla tua tabella) .... non riesco a capire quale sia il tuo problema ... forse se elenchi il risultato che ti esce e come vorresti ti venisse estratto risulta più comprensibile.

    mi spiace non esserti stato troppo di aiuto.

    ciao
    Gianni
    :coll:

  3. #3
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    vorrei ottenere un ordinamento per riferimento cosi

    a/1
    a/2
    a/3
    a/10
    a/20
    a/100
    a/101

    invece adesso, con la query d'esempio ho questo ordinamento

    a/1
    a/2
    a/3
    a/10
    a/100
    a/101
    a/20
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  4. #4
    Prova con un workaround ...

    codice:
    select *
    from tabella
    order by abs(substring(riferimento, 2))
    dovresti ricevere il resul set in ordine numerico

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

  5. #5
    SELECT riferimento
    FROM tabella

    ORDER BY INT(SUBSTR(riferimento,3,4))
    :coll:

  6. #6
    ops.... qualcuno e' arrivato prima di me , in realtà io l'ho provata in un 'altro db (DB2) e non su MySql.

    comunque spero che una delle due funzioni.
    ciao
    :coll:

  7. #7
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    risolto

    Codice PHP:
    select *
    from property
    order by abs
    (substring(riferimento3)) 
    grazie a tutti
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  8. #8
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    mi sono accorto che il campo riferimento può avere una combinazione diversa..

    A/01
    A/10
    A/102
    A/11
    A/71
    B/09
    B/100
    LV/01
    VSM/04

    ho provato qualche combinazione, ma non sono riuscito a sbrigliare la matassa

    dovrei riuscire ad ordinare prima per caratteri antecedenti alla /, e poi usare il vostro consiglio..
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  9. #9
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    se hai sempre lo slash come delimitatore, fai un

    select * from property order by substring_index(riferimento,'/',1),substring_index(riferimento,'/',-1)+0

  10. #10
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    grazie, funziona perfettamente!!
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

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.