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

Discussione: [MySQL] ordinamento

  1. #1

    ordinamento

    Ciao a tutti, io ho un problema con l'ordinamento da query.
    Io dovrei prelevare delle righe che poi diventeranno link.

    Il problema è che sono righe alfanumeriche e mi stampa questo:

    tav.1
    tav.10
    tav.11
    .........
    tav.2
    tav.21
    tav.22
    ......
    tav.3
    tav.32
    tav.33
    ......
    tav.4
    tav.5
    ......

    invece come logico vorrei che mi stampasse ordinato per numeri e cioè

    tav.1
    tav.2
    tav.3
    ......
    tav.11
    tav.12
    .....
    tav.20
    tav.21
    ........

    come potrei risolvere? questa è la query:


    Codice PHP:
    SELECT zonaprovinciaCOUNT(annunci_id) AS totale
                FROM annunci 
                WHERE  zona 
    != '' ".$where." GROUP BY zona ORDER BY zona
    grazie ciao

  2. #2
    Ciao,

    per questo tipo di domande c'è la sezione Database. Sposto il thread e adeguo il titolo al regolamento.
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  3. #3
    Supponendo che il contenuto di 'zona' sia proprio 'tav.XY',

    codice:
    SELECT .... ORDER by CAST(SUBSTR(name FROM 5) AS UNSIGNED) ASC;

  4. #4
    scusami ma non lo trovo giusto in quanto potrebbe pervenire una soluzione dal php e non da mysql, tipo un array che non è mysql.

  5. #5
    eh? non molto comprensibile quello che hai scritto
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  6. #6
    grazie k.b funziona benissimo. ciao

  7. #7
    Pero' suggerirei di mettere solo il numero in quel campo, non ha senso ripetere "tav." in ogni record visto che non aggiunge nessuna informazione. Semplificherebbe l'ordinamento e potresti aggiungere "tav." tranquillamente solo in fase di stampa.

  8. #8
    il problema è che non è un nuovo sito, ma un restyling e le tavole non sono nemmeno nel db ma vengono caricate tramite una select.
    ti dispiacerebbe spiegarmi le funzioni che hai utilizzato?

  9. #9
    SUBSTR sta per substring: estrae un pezzo di stringa (in questo caso il pezzo a partire dal carattere numero 5)
    CAST: trasforma il tipo del dato, in questo caso da stringa a numero (UNISGNED) in modo da fare l'ordinamento numerico e non alfabetico

  10. #10
    ciao a tutti,

    ho postato qui perchè penso sia attinente al titolo, spero di aver fatto la cosa giusta.
    spero qualcuno possa aiutarmi. devo ordinare una semplice select in Mysql partendo daun certo campo.

    mi spiego meglio, è una galleria fotografica che si apre cliccando su una miniatura. tale galleria inizia dalla foto n°1, io vorrei che se si clicca sulla miniatura n°6 la galleria inizi da lì.

    è una cosa possibile?
    ringrazio per qualsasi aiuto.

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.