当WHERE没有时,为什么IF语句有效

时间:2017-07-20 05:12:09

标签: if-statement sas where

谁能告诉我为什么这条线不起作用?它位于宏的datastep中。

其中1 * substr(Sample_ID,6,6)< 201704; (错误:where子句需要数字bla bla)

而if语句也是如此。

如果1 * substr(Sample_ID,6,6)< 201704;

1 个答案:

答案 0 :(得分:5)

where子句不能进行隐式转换(数字到字符,反之亦然),而datastep中的if语句可以执行该转换。

您的where子句应为:

where=(input(substr(Sample_ID,6,6),8.) < 201704)