SELECT Data, SUM(Importo) FROM incassi WHERE n_macchina = 2 GROUP BY SUBSTRING(Data,4,2)\nExpression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'manzuoli14424.incassi.Data' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
Scusa, stai usando un database online (su un sito)? se (si) si chiama MySQL se invece usi un database sul telefono si chiama SQL, che sono 2 cose totalmente diverse
leggendo i vari post che scrivi mi sembra che fai confusione su MySQL e SQL. Puoi postare la chiamata che fai al database? cioè usi (execremotequery)? perchè se usi questo tu dovresti leggere i dati che arrivano da una pagina PHP, quindi in formato JSON. Che và a finire nel JobDone di B4A, che a sua volta viene splittata come la vuoi. E quindi và a finire nello grafico che ti serve.Se sbaglio dimentica questo post!
Scusa, stai usando un database online (su un sito)? se (si) si chiama MySQL se invece usi un database sul telefono si chiama SQL, che sono 2 cose totalmente diverse
leggendo i vari post che scrivi mi sembra che fai confusione su MySQL e SQL. Puoi postare la chiamata che fai al database? cioè usi (execremotequery)? perchè se usi questo tu dovresti leggere i dati che arrivano da una pagina PHP, quindi in formato JSON. Che và a finire nel JobDone di B4A, che a sua volta viene splittata come la vuoi. E quindi và a finire nello grafico che ti serve.Se sbaglio dimentica questo post!
Usa ub DB MySQL su un sito.
Ma probabilmente ha un servizio (a pagamento o gratuito)
La tua proposta é buona ma dipende se dispone di php e se conosce php.
Io uso php per queste cose in effetti, ma ne conosco poco non uso nemmeno JSON
Ho trovato un HELPER su questo FLAG
ONLY_FULL_GROUP_BY
Quando si specifica una colonna non aggregata e non raggruppata in una clausola SELECT, il risultato non è definito. Per questo motivo dovrebbe essere generato un errore, ma ciò accade solo se questo flag è impostato.
ho cambiato server, ora va meglio e funziona, solo che non mi visualizza la data
ExecuteRemoteQuery("SELECT MONTHNAME(Data) As mese, SUM(Importo) As totale FROM incassi WHERE n_macchina = " & macchina & " GROUP BY MONTH(Data)",containcasso)
la data é VarChar(16) formattata cosi : 02/01/2018 05:14
il risultato della query e' : Response from server: [{"mese":null,"totale":"1811"}]
ho cambiato server, ora va meglio e funziona, solo che non mi visualizza la data
ExecuteRemoteQuery("SELECT MONTHNAME(Data) As mese, SUM(Importo) As totale FROM incassi WHERE n_macchina = " & macchina & " GROUP BY MONTH(Data)",containcasso)
la data é VarChar(16) formattata cosi : 02/01/2018 05:14
il risultato della query e' : Response from server: [{"mese":null,"totale":"1811"}]
sembra risultato di un campo vuoto o nullo, i dati ci sono nella tabella?
io sostituirei monthname con month
e nel codice userei una funzione che cambia il mese in nome
B4X:
ExecuteRemoteQuery("SELECT MONTH(Data) As mese, SUM(Importo) As totale FROM incassi WHERE n_macchina = " & macchina & " GROUP BY MONTH(Data)",containcasso)
Ovvero o vuoti la tabella (perlomeno i campi di cui cambi il tipo) o ne crei una nuova, con i campi del formato giusto, ed esegui un passaggio di dati dall'una all'altra.
Per i decimali, perché non usare un tipo di campo "consono" anziché un varchar?