代码之家  ›  专栏  ›  技术社区  ›  paolof89

SAS PROC SQL-如何将字符串转换为日期

sas
  •  0
  • paolof89  · 技术社区  · 7 年前

    我想用 哪里 基于日期字段的条件。 例如,我需要计算2002年1月1日以后出生的所有学生 代码如下:

    PROC SQL;
    SELECT COUNT(*) 
    FROM students t
    WHERE t.birth_date > '2002-01-01'
    

    查看其他stackOverflow主题,我发现解决方案是使用 函数,但不清楚如何处理不同的格式。

    在本例中,“出生日期”字段的格式为:01JUL2017:00:00:00

    1 回复  |  直到 7 年前
        1
  •  1
  •   J_Lard    7 年前

    你需要使用 datepart 函数只从 birth_date 字段。另外,要让SAS识别日期,您需要添加 d 到日期字符串的结尾。

    PROC SQL;
    SELECT COUNT(*) 
    FROM students t
    WHERE datepart(t.birth_date) > '1JAN2002'd;
    quit;
    
    推荐文章