1... NO NEED TO SHOUT
2...Dates should be stored as *dates* not as 3 columns.
Anyway...try this
SELECT
to_date(logins.month || '/' || logins.day || '/' || logins.year,'mm/dd/yyyy') as loginDt,
logins.person
FROM logins
LEFT JOIN MIN_LUNCH ON MIN_LUNCH.person = logins.person
AND MIN_LUNCH.date = to_date(logins.month || '/' || logins.day || '/' || logins.year,'mm/dd/yyyy')
WHERE logins.month between 1 and 3
and logins.day = 1
and logins.year = 2010
But rest assured, having dates stored in 3 columns is going to be a nightmare in all sorts of ways.
You might get some benefit by creating a virtual column, eg
alter table logins add a_real_date generated always as ( to_date(logins.month || '/' || logins.day || '/' || logins.year,'mm/dd/yyyy') )
and then index "a_real_date" and write your queries using that column