I am new to salesforce marketing cloud. How to send an email, three days before birthday date using SQL query or using data filter Automation studio. Could anybody please help me.
The SQL you are looking for is below:
SELECT SubscriberKey , Birthdate , ..yourfields.. FROM [yourDE] WHERE CONVERT(date, Birthdate) = CONVERT(date, DATEADD(day,+3, GETDATE())) /* Target: yourBdayDE */ /* Action: Overwrite */
This query will pull those who have an birthday exactly 3 days in the future. Please notice I used CONVERT() to change the fields from DATETIME to just Date. This way it will only match the day, so the time field will not mess with your results. Also note that I have it with the action of 'Overwrite'. This is so that only those relevant records will be inside of this DE, so you do not need to worry about sending it to anyone who has already received it.
From there you can either push this into Automation Studio or JourneyBuilder.
Step 1 - Query Activity
Step 2 - Validation Activity (to check if [yourBdayDE] is empty)
Step 3 - User Initiated Send to send out the email to [yourBdayDE]
Create a Journey and use [yourBdayDE] as the entry source. Once the person gets added to this DE, they will then be pushed into your Journey and follow the logic and actions you have set in there.