【发布时间】:2019-01-13 07:27:01
【问题描述】:
我正在尝试使用 Max 函数来获取最新日期的记录,但它并没有给出预期的结果,因为它还给出了旧日期的数据。下面是数据框 OA_Output 的输出:
Org_ID ORG_OFFICIAL_NORM_NAME ORG_IMMEDIATE_PARENT_SRC ORG_IP_SRC_MD_Date
-------- ---------------------- ------------------------ ------------------
132693 BOLLE INCORPORATED abc.com 26-JUN-18
122789 BEE STINGER, LLC aa.com 12-Mar-18
344567 CALIBER COMPANY xyz.com 16-Feb-16
639876 Maruti yy.com 23-Jun-17
我在 R 代码下运行以获取最新日期的记录:
gautam1 <-
sqldf(
"
SELECT ORG_OFFICIAL_NORM_NAME,ORG_IMMEDIATE_PARENT_SRC
,MAX(ORG_IP_SRC_MD_DATE),ROW_ID
FROM OA_output
where ROW_ID = 1
and ORG_IMMEDIATE_PARENT_SRC like '%exhibit21%'
GROUP BY ORG_IMMEDIATE_PARENT_ORGID
ORDER BY ORG_IMMEDIATE_PARENT_ORGID
" )
在上面的代码中,max 函数没有给出想要的结果。我不确定 Oracle 和 R 之间是否存在日期格式问题。 任何帮助将不胜感激 谢谢 高塔姆
【问题讨论】:
-
您的
Date列的类型是否正确?你可以使用class()? -
是的,它是日期类型。我应该如何使用类()。你能帮帮我吗
-
这是一个 SQL 问题,而不是 R 问题。 max 函数仅在 SQL 中使用。
-
请将您的输入数据框设为
OA_outputreproducible。 -
sqldf 不适用于 Oracle。它适用于 SQLite、H2、MySQL 和 PostgreSQL。