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

1 if-statement sas where

任何人都可以告诉我为什么这条线不起作用?它位于宏的datastep中.

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

而if语句也是如此.

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

Chr*_*s J 5

where子句不能做隐式转换(编号以字符,或反之亦然),而一个if所述datastep内语句可以执行转换.

你的where条款应为:

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