Mam następujące zapytanie, które wykorzystuje datę zmienną, która jest wytwarzana wewnątrz procedury przechowywanej:SQL Jak poprawnie ustawić wartość zmiennej daty i używać jej?
DECLARE @sp_Date DATETIME
SET @sp_Date = DateAdd(m, -6, GETDATE())
SELECT DISTINCT pat.PublicationID
FROM PubAdvTransData AS pat
INNER JOIN PubAdvertiser AS pa ON pat.AdvTransID = pa.AdvTransID
WHERE (pat.LastAdDate > @sp_Date) AND (pa.AdvertiserID = 12345))
Problem polega na tym, że wartość @sp_Date wydaje się być ignorowane i zastanawiam się dlaczego? Czy zdefiniowałem lub użyłem go niepoprawnie?
SQL Microsoft SQL-server-2008
Błąd użytkownika ...
Dzięki, R.
Skąd wiesz, że jest to ignorowane? Czy widzisz wiersze na wyjściu, gdzie 'LastAdDate' jest wcześniej niż 6 dni temu? – Aaronaught
Co rozumiesz przez zignorowanie? Nie filtruje czy co? –
Wyciąga dane, które pochodzą sprzed ponad 6 miesięcy. Francisco Soto, tak, nie filtrując daty. – flavour404