In R, come è possibile importare il contenuto di un file di testo multilinea (contenente SQL) in una stringa singola?Importazione query SQL multilinea su stringa singola
Il file sql.txt assomiglia a questo:
SELECT TOP 100
setpoint,
tph
FROM rates
ho bisogno di importare il file di testo in una stringa R tale che assomiglia a questo:
> sqlString
[1] "SELECT TOP 100 setpoint, tph FROM rates"
che è così che posso alimentarlo al RODBC come questo
> library(RODBC)
> myconn<-odbcConnect("RPM")
> results<-sqlQuery(myconn,sqlString)
Ho provato il comando readLines come segue ma non gi ve il formato stringa richiesto da RODBC.
> filecon<-file("sql.txt","r")
> sqlString<-readLines(filecon, warn=FALSE)
> sqlString
[1] "SELECT TOP 100 " "\t[Reclaim Setpoint Mean (tph)] as setpoint, "
[3] "\t[Reclaim Rate Mean (tph)] as tphmean " "FROM [Dampier_RC1P].[dbo].[Rates]"
>
Grazie Dirk, funziona, eccetto che la stringa è simile a "SELEZIONA TOP 100 \ t setpoint, \ t tph \ t FROM tariffe \ t". Ho solo bisogno di aggiungere gsub ("\ t", "", sqlcmd) –
Beh, quello che ho copiato non aveva le schede, in ogni caso il parser SQL probabilmente ignorerebbe comunque le schede e hai trovato il 'gsub()' - tutto bene . –
Questo probabilmente macellerà la tua query se hai qualche '--' commento, non è vero? Vorrei usare 'paste (readLines ('pathto/query.sql'), collapse =" \ n ")' –