E 'possibile cambiare la virgola decimale da "." (punto) ad altro carattere (virgola) in uscita MySQL? Non voglio usare funzioni come FORMAT
, voglio solo utilizzare tutte le query che uso normalmente senza alcuna modifica. Sto cercando alcune impostazioni (di alcune variabili, locali, ecc.). Ho provato a cercare il manuale ma senza successo.Cambia il separatore decimale in MySQL
risposta
No, non è possibile. Questo è lo standard SQL e MySQL lo rispetta (almeno in quel punto).
Il problema non riguarda realmente l'output (come accennato, ci sono varie funzioni FORMAT
nella maggior parte dei DBMS) ma con INSERT
. Se è possibile utilizzare la virgola ,
ad esempio come punto decimale (che è comune in altre impostazioni internazionali) che viene utilizzato anche come separatore di valori, gli inserti diventerebbero ambigui. Vedere la mia risposta nella domanda: insert-non-english-decimal-points-in-mysql
ypercube, grazie. Qual è lo standard SQL? La sintassi della query SQL o il formato di output o entrambi? Ho solo bisogno dell'output, così se seleziono 'select 1/3' emette' 0,33333'. – TMS
Non sono sicuro che il formato di output sia specificato negli standard SQL o che non sia disponibile e possa essere diverso per diversi metodi/framework di connessione. Ma non conosco il modo di farlo in MySQL. –
Suggerimento per le esportazioni CSV: SELECT REPLACE(CAST(prijs_incl AS CHAR), '.', ',')
vi darà input che può essere utilizzato come campi numerici in excelsheets europee.
Utile, anche se puoi usare direttamente 'SELECT REPLACE (prijs_incl, '.', ',')' Dato che la conversione delle stringhe è automatica, vedi [mysql doc] (http://dev.mysql.com/doc/refman/5.0 /en/cast-functions.html#function_cast) – vicenteherrera
Non lo capisco davvero, cosa intendi con "output MySQL"? Visualizzazione di un risultato di una query tramite il client della riga di comando mysql? I valori numerici non hanno un separatore decimale definito da MySQL, ma sono definiti dal linguaggio e dal framework utilizzato per emetterli per uso umano. –
@MattH, intendo qualsiasi output client (console, PHP, qualunque sia). Il problema in PHP è che ottieni sempre una stringa, anche se il campo del database è di tipo 'double'. Quindi non esiste una soluzione generica ovvia sul lato PHP, quindi stavo cercando in MySQL. – TMS