首页 > 解决方案 > 使用带有“From”变量的 sqldf 时,result_create 出错

问题描述

result = sqldf("select * 
           FROM ABC_ocean 
           LEFT JOIN lookup_date 
           ON ABC_ocean.departure_date_local BETWEEN lookup_date.From AND lookup_date.To")

我正在尝试在使用上述代码的范围内加入两个数据库。我收到以下消息:

Error in result_create(conn@ptr, statement) : near "From": syntax error

有人可以帮我理解我在这里做错了什么吗?

str(lookup_date)

查找日期

str(ABC_ocean)

在此处输入图像描述

标签: rsqldf

解决方案


FROM是保留字。这不是第FROM一个问题,而是 column name From。如果这确实是名称,则需要引用。就像是:

SELECT * 
FROM ABC_ocean 
LEFT JOIN lookup_date 
    ON ABC_ocean.departure_date_local BETWEEN lookup_date.`From` AND lookup_date.To

推荐阅读