I have three date variables corresponding to the beginning of three surveys for different individuals in the %td format (01jan2020 for instance) (so the beginning of survey 1 can vary across observations, etc.).

To generate the earliest date, I would just go for egen earliest = rowmin(date1 date2 date3), but what if I'm interested in finding the earliest date an individual has been surveyed between, say, February 2020 and November 2020?

Thanks a lot for the help. I would love to show you some data example but I don't know how to shuffle my dataset because the first observations only have one date available. I'd be grateful if someone helped me figure that little problem out!