SAS sql是否有任何句点数据类型?

SAS sql是否有任何句点数据类型?,sas,Sas,下表列出了参加马拉松比赛的人 person start end mike 2-Jun-14 2-Aug-14 nike 3-Jul-14 9-Aug-14 mini 1-Aug-14 3-Nov-14 我想知道每个月1日是否有人在“跑马拉松”。所需的表应该如下所示 person running on mike 1-Jul-14 mike 1-Aug-14 nike 1-Aug-14 mini 1-Aug-14 min

下表列出了参加马拉松比赛的人

person  start       end
mike    2-Jun-14    2-Aug-14
nike    3-Jul-14    9-Aug-14
mini    1-Aug-14    3-Nov-14
我想知道每个月1日是否有人在“跑马拉松”。所需的表应该如下所示

person  running on
mike    1-Jul-14
mike    1-Aug-14
nike    1-Aug-14
mini    1-Aug-14 
mini    1-Sep-14
... for all other months 

SAS
proc sql
中是否有任何方法可以获得此结果。其他数据库管理系统(Teradata、Oracle)都有这样的功能。SAS中实现这一点的最佳方法是什么

我会在SAS中使用数据步骤来解决这个问题

data have;
input person $ from :anydtdte. to :anydtdte.;
format from to date11.;
datalines;
mike    2-Jun-14    2-Aug-14
nike    3-Jul-14    9-Aug-14
mini    1-Aug-14    3-Nov-14
;
run;

data want(keep=person running_on);
set have;
format Running_on date11.;

do Running_on=from to to;
    if day(running_on) = 1 then
        output;
end;
run;

我将使用数据步骤在SAS中解决此问题

data have;
input person $ from :anydtdte. to :anydtdte.;
format from to date11.;
datalines;
mike    2-Jun-14    2-Aug-14
nike    3-Jul-14    9-Aug-14
mini    1-Aug-14    3-Nov-14
;
run;

data want(keep=person running_on);
set have;
format Running_on date11.;

do Running_on=from to to;
    if day(running_on) = 1 then
        output;
end;
run;

您可能会考虑使用<代码> Itnx函数来直接移动到下个月,而不是每天迭代。我在想更多的是<代码> PROC SQL<代码>解决方案。上述解决方案使用外部(非SQL)超级功能。如果SAS SQL不够好,那么这个解决方案是可以接受的,你可以考虑使用<代码> Itnx函数来直接移动到下个月,而不是每天迭代。我在想更多的是<代码> PROC SQL<代码>解决方案。上述解决方案使用外部(非SQL)超级功能。好吧,如果SAS sql不够好,那么这个解决方案是可以接受的