栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在RODBC报价单中的子句

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在RODBC报价单中的子句

在这里,您将陷入嵌套语法和多级语句处理的陷阱:

table <- sqlQuery >(< myconn, 'SELECt *       FROM "_SYS_BIC"."mytable.TABLE/ALL_DATA"'>)< ---!        ('PLACEHOLDER' = ('$$AS_OF_DATE$$',      '2017-01-09'),     'PLACEHOLDER' = ('$$ABCD_ONE$$',      '0'),     'PLACEHOLDER' = ('$$ABCD_TWO$$',      '0'),      'PLACEHOLDER' = ('$$EFGH$$',     '12345'),     'PLACEHOLDER' = ('$$FLAG$$',       '1'))')

对于R,您的命令在我放置的位置结束,

< ---!
其余所有内容对R都是无效的。
在这种情况下,请记住sqlQuery()函数期望第二个参数中包含 整个 SQL命令字符串,这一点很重要。这包括HANA的WITH
PARAMETER语法。

为了避免此类问题,可以先将SQL命令分配给变量,然后仅在函数调用中使用该变量。
为了使用R变量设置参数,可以使用文本替换。

# create the date parameter in the right format YYYY-MM-DDselDate <- format(Sys.Date() , "%F")

selDate [1]“ 2017-02-04”

# create the base SQL command with %D as a placeholder for the selDate# note how all single quotes inside the sqlCMD need to be escaped by a  sqlCMD <- 'SELECt * +        FROM "_SYS_BIC"."mytable.TABLE/ALL_DATA"    + ('PLACEHOLDER' = ('$$AS_OF_DATE$$', '%D'), + 'PLACEHOLDER' = ('$$ABCD_ONE$$', '0'), + 'PLACEHOLDER' = ('$$ABCD_TWO$$', '0'), + 'PLACEHOLDER' = ('$$EFGH$$', '12345'), + 'PLACEHOLDER' = ('$$FLAG$$', '1'))'

sqlCMD [1]“ SELECt * n + FROM ” _ SYS_BIC “。” mytable.TABLE / ALL_DATA
“ n +(’PLACEHOLDER’=(’$$ AS_OF_DATE $$’,’%D’), n +’ PLACEHOLDER’=(’‘$$
ABCD_ONE $$’,‘0’), n +’PLACEHOLDER’=(’$$ ABCD_TWO $$,‘0’), n
+’PLACEHOLDER’=(’$$ EFGH $$ ‘,‘12345’), n +’PLACEHOLDER’=(’$$ FLAG
$$’,‘1’))“

# now subsitute the %D with the selDatesqlCMD <- gsub ("%D", selDate, sqlCMD)

sqlCMD [1]“ SELECt * n FROM ” _ SYS_BIC “。” mytable.TABLE / ALL_DATA “
n(’PLACEHOLDER’=(’$$ AS_OF_DATE $$’,‘2017-02-04’), n’PLACEHOLDER’=(’$$
ABCD_ONE $$’,‘0’), n’PLACEHOLDER’=(’$$ ABCD_TWO $$’,‘0’),
n’PLACEHOLDER’=(’$$ EFGH $$’,‘12345’), n’PLACEHOLDER’=(’$$ FLAG $$’,‘1’))“

  # finally run the query  table <- sqlQuery(myconn, sqlCMD)

当然,所有常规建议都适用(例如 不要 使用SELECT *或在获取结果数据集之前确保正确的过滤和聚合)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/368450.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号