6
Sto usando RMySQL e DBI per il collegamento tra R e MySQLEseguire comandi SQL multipli contemporaneamente su R
library(RMySQL)
library(DBI, quietly = TRUE)
tutto funziona bene per un comando, ad esempio
sql = "select * from clients"
con <- dbConnect(MySQL(),user=user, password=password, dbname=dbname, host=host)
rs <- dbSendQuery(con, sql)
data <- fetch(rs, n=-1)
huh <- dbHasCompleted(rs)
dbClearResult(rs)
on.exit(dbDisconnect(con))
Tuttavia, quando voglio eseguire più comandi con ";" tra di loro (come per impostare un parametro), restituisce l'errore. Per esempio
sql = "SET @LAST_TEN_DAY = DATE_ADD(NOW(), INTERVAL -10 DAY); select * from clients where date > @LAST_TEN_DAY"
con <- dbConnect(MySQL(),user=user, password=password, dbname=dbname, host=host)
rs <- dbSendQuery(con, sql)
data <- fetch(rs, n=-1)
huh <- dbHasCompleted(rs)
dbClearResult(rs)
on.exit(dbDisconnect(con))
Molte grazie,
Non è possibile SQL e R. Devi creare una variabile che contenga il valore di 'DATE_ADD (NOW(), INTERVAL, -10 DAY)' e quindi usa la query SQL 'SELECT * FROM CLIENTS WHERE DATE> your variable value' – MaxPD
Ciao Max, grazie per segreteria. Posso sapere come farlo in R? Perché se si esegue un comando SQL per la creazione di una variabile, non sono sicuro che tale variabile verrà mantenuta per la successiva esecuzione del comando SQL. –
La variabile sarà globale e può essere utilizzata per qualsiasi istruzione sql all'interno del codice R. – MaxPD