Próbuję napisać zapytanie, które znajdzie użytkowników, którzy obchodzą rocznicę z moją firmą, abyśmy mogli wysłać do nich wiadomość e-mail (np. Jeśli dzisiejsza data to 3/27, znajdzie ludzi, którzy zapisali się na 1/27, 2/27, 3/27, 4/27 itd., niezależnie od roku).Zapytanie SQL, aby znaleźć użytkowników na comiesięczną rocznicę
Moja metoda polega na znalezieniu użytkowników, których "dzień" jest częścią daty rejestracji równej "dziennej" części dzisiejszej daty.
SELECT [User Id],[Sign Up Date]
FROM [Monthly Account Update]
WHERE DATEPART(DAY,[Sign Up Date]) = DAY(GETDATE())
Jednak to oczywiście nie działa dla tych scenariuszy:
Pod koniec lutego, nie będę miał szansę Email Ludzie z 29, 30 i 31 miesięcznych rocznice, bo tak się nie stało. Idealnie, gdy jest 28 lutego, chciałbym po prostu załatwić ludzi z 29, 30 i 31 datami.
Za każdy inny miesiąc, w którym data kończy się na 30., nie będę mógł wysyłać e-maili z 31 datami. Idealnie tutaj, chciałbym po prostu zgrupować ludzi z 30 i 31 datami.
Czy można wykonać jedną z tych czynności za pomocą zapytania SQL?
Co o na pierwszy (lub 15-ty) miesiąca w zamian? –