sas - 过滤日期的公式
问题描述
我的公式在选择日期时遇到问题,在 SAS 中使用 PROc SQL。我做错了什么?谢谢你们。问候,杰夫
我使用这个编码器:
FROM
VTXBUSS.s
WHERE
t1.ifrs_stage_date_at_start IS ’ 31DEC2017% ’
ORDER BY
t1.customer_id,
我得到一个语法错误。日期格式如下:31DEC2017:00:00:00.000000
SAS给出日志:
错误:值 '''n 不是有效的 SAS 名称。警告:未解决宏的明显调用。45 WHERE t1.ifrs_stage_at_start NOT = t1.ifrs_stage_PROV AND t1.ifrs_stage_date_at_start = '31DEC2017%', _ 76 错误 22-322:语法错误,应为以下之一:;, !, !!, &, (, *, * *、+、-、'.'、/、<、<=、<>、=、>、>=、AND、EQ、EQT、EXCEPT、GE、GET、GROUP、GT、GTT、HAVING、INTERSECT、LE , LET, LT, LTT, NE, NET, NOT, OR, ORDER, OUTER, UNION, ^, ^=, |, ||, ~, ~=.
解决方案
尝试这个:
FROM
VTXBUSS.s
WHERE
t1.ifrs_stage_date_at_start = '31DEC2017'd
ORDER BY
t1.customer_id,
如果您正在寻找特定的“日期时间”,那么您应该使用,例如:
FROM
VTXBUSS.s
WHERE
t1.ifrs_stage_date_at_start = '31DEC2017:00:00:00.000000'dt
ORDER BY
t1.customer_id,
这是因为,在 PROC SQL 中处理日期时,您必须指定要查找的数据类型;如果是 DATE,则输入“d”,如果是 DATETIME,则输入“dt”
推荐阅读
- mysql - 是否甚至可以仅使用 Mysql 将 Protobuf 二进制消息解码为来自 Mysql blob 列的人类可读视图?
- javascript - 用户登录 FB 应用程序后,FB 登录按钮不会更改为“注销”
- github - Heroku 应用程序仅适用于旧版本,奇怪的是代码与 github 代码相同
- node.js - 当层次结构中有更多子级时,Firebase 实时数据库数据快照将没有价值
- javascript - 谷歌图表问题
- javascript - Fetching all private npm modules from an npmjs user
- graphql - 使 Mikro-ORM 关系字段可选
- r - 如何使用 R 中的 data.table 找到股票的月收益?
- node.js - 如何使用 node.js 将选项值更新到我的 mongodb 数据库
- wordpress - 由于存在小数,因此无法按评级对帖子进行排序