August 30, 2013 at 11:36 pm
[font="Courier New"]Hi All,
I have main data set which consists of lacks of records and below is my query
DECLARE @USER_DT DATETIME
SET @USER_DT = '2013-08-01'
DECLARE @RANGE_DATE DATETIME
SELECT distinct @RANGE_DATE = RANGE_DATE
FROM
dbo.TABLE
WHERE
RANGE_DATE >= (CONVERT(VARCHAR(8), DATEADD (M, -2, GETDATE()), 21)+ '26')
AND
RANGE_DATE <= (CONVERT(VARCHAR(8), DATEADD (M, -1, GETDATE()), 21)+ '25')
IF(@USER_DT = @RANGE_DATE )
BEGIN
SELECT*
FROMMAIN_TABLE
WHERE
USER_DATE = @USER_DT
AND
RANGE_DATE >= (CONVERT(VARCHAR(8), DATEADD (M, -2, GETDATE()), 21)+ '26')
AND
RANGE_DATE <= (CONVERT(VARCHAR(8), DATEADD (M, -1, GETDATE()), 21)+ '25')
END
BEGIN
SELECT*
FROMMAIN_TABLE
WHERE
USER_DATE = @USER_DT
AND
RANGE_DATE >= (CONVERT(VARCHAR(8), DATEADD (M, -1, GETDATE()), 21)+ '26')
AND
RANGE_DATE <= (CONVERT(VARCHAR(8), DATEADD (M, 0, GETDATE()), 21)+ '25')
END
i.e. @USER_DT is for user selection in SSRS Report window. Now, let say he has enter '2013-08-01' now second parameter @RANGE_DT is created for storing distinct dates values now my problem is I want to check that user entered date in @Range_DT and if it is present as shown in the above query i will get desired output. But thing is we can check only single value in If-Else and I wanna check single date value is present or not and displya output accordingly. Is there any way to do this (This later i am going to put in SSRS report).[/font]
August 31, 2013 at 6:32 am
You probably want something like:
IF EXISTS (SELECT *
FROM dbo.TABLE
WHERE RANGE_DATE >= (CONVERT(VARCHAR(8), DATEADD (M, -2, GETDATE()), 21)+ '26')
AND RANGE_DATE <= (CONVERT(VARCHAR(8), DATEADD (M, -1, GETDATE()), 21)+ '25')
AND RANGE_DATE = @USER_DT)
[font="Times New Roman"]Erland Sommarskog, SQL Server MVP, www.sommarskog.se[/font]
Viewing 2 posts - 1 through 1 (of 1 total)
You must be logged in to reply to this topic. Login to reply
This website stores cookies on your computer.
These cookies are used to improve your website experience and provide more personalized services to you, both on this website and through other media.
To find out more about the cookies we use, see our Privacy Policy