SAS (Base SAS)+
<div style="font-family: Courier New; font-size: 14pt">
<b><span style="color:#000080;background-color:#ffffff;">data</span></b><span style="color:#000000;background-color:#ffffff;"> dates;<br></span>
<span style="color:#000000;background-color:#ffffff;"> </span><span style="color:#0000ff;background-color:#ffffff;">input</span><span style="color:#000000;background-color:#ffffff;"> dob : </span><span style="color:#008080;background-color:#ffffff;">date9.</span>;
<span style="color:#000000;background-color:#ffffff;"><br> </span><span style="color:#0000ff;background-color:#ffffff;">format</span><span style="color:#000000;background-color:#ffffff;"> dob </span><span style="color:#008080;background-color:#ffffff;">date9.</span>;
<span style="color:#000000;background-color:#ffffff;"><br> </span><span style="color:#0000ff;background-color:#ffffff;">datalines</span>;
<span style="color:#000000;background-color:#ffffff;"><br></span><span style="color:#000000;background-color:#ffffc0;">01JAN2000 <br>15FEB1995 <br>20DEC2010 <br></span>;
<span style="color:#000000;background-color:#ffffff;"><br></span><b><span style="color:#000080;background-color:#ffffff;">run</span></b>;
<span style="color:#000000;background-color:#ffffff;"><br><br></span><b><span style="color:#000080;background-color:#ffffff;">data</span></b><span style="color:#000000;background-color:#ffffff;"> extract_parts;<br></span>
<span style="color:#000000;background-color:#ffffff;"> </span><span style="color:#0000ff;background-color:#ffffff;">set</span><span style="color:#000000;background-color:#ffffff;"> dates;<br> day = day(dob);<br> month = month(dob);<br> year = year(dob);<br> weekday = weekday(dob);<br></span>
<b><span style="color:#000080;background-color:#ffffff;">run</span></b><span style="color:#000000;background-color:#ffffff;">;</span></div>- In SAS, each date part has its own function:
day(dob),month(dob),year(dob),weekday(dob). - The input must be a SAS date value (a number of days since 1960-01-01);
input dob : date9.;uses the DATE9 informat to parse strings like01JAN2000. - Applying
format dob date9.;makes the raw numeric date display as a human-readable date string. day(dob)returns an integer 1-31;month(dob)returns 1-12;year(dob)returns the four-digit year.weekday(dob)returns 1 for Sunday through 7 for Saturday — note this differs from the ISO convention where Monday is 1.- We run and inspect EXTRACT_PARTS: confirm the derived day, month, year, and weekday match the input dates.