• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 157
  • Last Modified:

Sub Requirements in SQL Query

Here is what I have so far, however there are a few mods I need and am not sure of.  Instead of WHERE     (Status <> 'Closed') AND ([Date Opened] <= DATEADD(dd, - 8, DATEDIFF(dd, 0, GETDATE()))) I need this to check the Priority and then be able to set the dd, -8 to different amounts based upon Priority level, and I need to set a couple different requirements at once. For instance if it is priority 2 then I want to set the dd, -2 while priority 4 is dd, -8

SELECT     *
FROM         (SELECT     Incident_ID AS [Ticket Number], CONVERT(datetime, DateClosed / 86402.027 + 25567) AS [Date Closed], 
                                              AssignedGroup AS [Assigned Group], AssignedTechnician AS [Assigned Technician], 
                                              CASE Priority WHEN 4 THEN 'Low' WHEN 3 THEN 'Medium' WHEN 2 THEN 'High' END AS Priority, 
                                              CASE Status WHEN 3 THEN 'Closed' WHEN 8 THEN 'Drill Status' WHEN 4 THEN 'Hold' WHEN 1 THEN 'Assigned' WHEN 0 THEN 'New' WHEN
                                               9 THEN 'Project' END AS Status, CONVERT(datetime, Date_Opened / 86402.027 + 25567) AS [Date Opened], 
                                              CASE COMPLEXITY WHEN 1 THEN 'Yes' WHEN 0 THEN 'No' END AS [Suspense Missed]
                       FROM          dbo.TTS_Main) derived
WHERE     (Status <> 'Closed') AND ([Date Opened] <= DATEADD(dd, - 8, DATEDIFF(dd, 0, GETDATE()))) AND (Status <> 'Project')

Open in new window

0
141ANG
Asked:
141ANG
1 Solution
 
reb73Commented:
Like this ?
SELECT     *
FROM         (SELECT     Incident_ID AS [Ticket Number], CONVERT(datetime, DateClosed / 86402.027 + 25567) AS [Date Closed], 
                                              AssignedGroup AS [Assigned Group], AssignedTechnician AS [Assigned Technician], 
                                              CASE Priority WHEN 4 THEN 'Low' WHEN 3 THEN 'Medium' WHEN 2 THEN 'High' END AS Priority, 
                                              CASE Status WHEN 3 THEN 'Closed' WHEN 8 THEN 'Drill Status' WHEN 4 THEN 'Hold' WHEN 1 THEN 'Assigned' WHEN 0 THEN 'New' WHEN
                                               9 THEN 'Project' END AS Status, CONVERT(datetime, Date_Opened / 86402.027 + 25567) AS [Date Opened], 
                                              CASE COMPLEXITY WHEN 1 THEN 'Yes' WHEN 0 THEN 'No' END AS [Suspense Missed]
                       FROM          dbo.TTS_Main) derived
WHERE   (Status <> 'Closed')
AND	(Status <> 'Project')
AND 	([Date Opened] <= CASE	WHEN Priority = 2 THEN DATEADD(dd, - 2, DATEDIFF(dd, 0, GETDATE()))
				WHEN Priority = 3 THEN DATEADD(dd, - 5, DATEDIFF(dd, 0, GETDATE()))
			  	WHEN Priority = 3 THEN DATEADD(dd, - 8, DATEDIFF(dd, 0, GETDATE()))
			  END
	)

Open in new window

0
 
141ANGAuthor Commented:
This worked great, thankyou
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Amazon Web Services - Basic

Are you thinking about creating an Amazon Web Services account for your business? Not sure where to start? In this course you’ll get an overview of the history of AWS and take a tour of their user interface.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now