[英]SQL query variable
i have a sql query which grabs trade data for a specific stock. 我有一个SQL查询,可获取特定股票的交易数据。 i am trying to now loop through different stocks to apply a specific analysis.
我现在尝试遍历不同的股票以应用特定的分析。 the code below shows my attempt at passing a variable to the query in the loop, as well as the "hardcoded" query.
下面的代码显示了我在循环中将变量传递给查询以及“硬编码”查询的尝试。
any guidance will be greatly appreciated. 任何指导将不胜感激。
my.stocks <- c('ABL','IPL')
for (i in 1:2)
{
channel <- odbcConnect("Public_Trades")
my.frame1 <- sqlQuery(channel,
"SELECT TRADE_DATE_TIME,
PRICE,
QUANTITY
FROM [ISLDWODS].[HERMES_PUBLIC].[PUBLIC_TRADES_HISTORY]
where TRADE_DATE_TIME > '2012-11-01' and TRADE_TYPE ='AT' and INSTR_CODE = " & my.stocks[i] &
"order by TRADE_DATE_TIME asc")
my.frame2 <- sqlQuery(channel,
"SELECT TRADE_DATE_TIME,
PRICE,
QUANTITY
FROM [ISLDWODS].[HERMES_PUBLIC].[PUBLIC_TRADES_HISTORY]
where TRADE_DATE_TIME > '2012-11-01' and TRADE_TYPE in ('AT','UT') and INSTR_CODE = 'MPC'
order by TRADE_DATE_TIME asc")
close(channel)
}
Thanks sgibb, 谢谢sgibb,
?paste solves the issue: 粘贴解决了这个问题:
my.stocks <- c("'ABL'","'IPL'")
for (i in 1:2)
{
my.string1 <- paste("SELECT TRADE_DATE_TIME,PRICE,QUANTITY
FROM [ISLDWODS].[HERMES_PUBLIC].[PUBLIC_TRADES_HISTORY]
where TRADE_DATE_TIME > '2012-11-01' and TRADE_TYPE ='AT' and INSTR_CODE = ", my.stocks[1]," order by TRADE_DATE_TIME asc")
my.string2 <- paste("SELECT TRADE_DATE_TIME,PRICE,QUANTITY
FROM [ISLDWODS].[HERMES_PUBLIC].[PUBLIC_TRADES_HISTORY]
where TRADE_DATE_TIME > '2012-11-01' and TRADE_TYPE in ('AT','UT') and INSTR_CODE = ", my.stocks[1]," order by TRADE_DATE_TIME asc")
channel <- odbcConnect("Public_Trades")
my.frame1 <- sqlQuery(channel,my.string1)
my.frame2 <- sqlQuery(channel,my.string2)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.