Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    67

    Problema con select max

    Salve, in un db gestito da PostreSQL, ho un campo di tipo character varying e mi serve conoscere qual è il valore maggiore per poi incrementarlo.

    $max = pg_fetch_row(pg_query("SELECT MAX(num_richiesta) FROM richiesta_auto"));
    $maxnumrichiesta = $max[0];
    $numero_richiesta = $maxnumrichiesta +1 ;

    Il codice funziona, ma dipo aver inserito il decimo record, mi restituisce come record maggiore quello n.9 , compromettendomi il funzionamento del sistema.
    Come è possibile ? Non ditemi che devo cambiare il tipo del campo, perché purtroppo per come è stato sviluppato il sistema in precedenza, mi serve di quel tipo altrimenti avrei parecchi malfunzionamenti.
    Come posso risolvere, per favore ?

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Prova così

    SELECT MAX(cast(num_richiesta as integer)) ....

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    67
    Originariamente inviato da nicola75ss
    Prova così

    SELECT MAX(cast(num_richiesta as integer)) ....
    Ora funziona perfettamente, grazie
    Il valore che poi mi restituisce è un intero, vero ?

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Sì, la stringa viene "convertita" in un valore numerico. Il cambio del tipo di campo sarebbe preferibile ma se dici di non poterlo fare forza la conversione come ti ho suggerito.

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    67
    Grazie ancora !

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.