[Webinar] Streamline your web hosting managementRegister Today

x
?
Solved

SQL query and if statement

Posted on 2014-03-03
9
Medium Priority
?
436 Views
Last Modified: 2014-03-09
In my where statement I need to check two areas, if the first isn't populated, check the other.

if a.C_EFF_DT is NOT NULL then a.C_EFF_DT < date(current date - 6 months)
if a.C_EFF_DT is NULL then b.C_EFF_DT < date(current date - 6 months)

So basically if the first C_EFF_DT is null then check the second C_EFF_DT, if it has a date, then check it and don't worry about the second date.
0
Comment
Question by:Lee R Liddick Jr
8 Comments
 
LVL 22

Assisted Solution

by:plusone3055
plusone3055 earned 600 total points
ID: 39900421
<cfif a.C_EFF_DT is NOT NULL>
 a.C_EFF_DT < date(current date - 6 months)
<cfelse>
 a.C_EFF_DT is NULL then b.C_EFF_DT < date(current date - 6 months)
</cfif>
0
 
LVL 11

Assisted Solution

by:David Kroll
David Kroll earned 600 total points
ID: 39900424
case
  when a.C_EFF_DT is NOT NULL then a.C_EFF_DT < date(current date - 6 months)
  when a.C_EFF_DT is NULL then b.C_EFF_DT < date(current date - 6 months)
  else (a date if the above two are false)
end
0
 

Author Comment

by:Lee R Liddick Jr
ID: 39900465
I didn't want this in CF...I am doing this in SAS SQL.  The case end in the where statement didn't work.  It doesn't like the less than sign...the query gives an error in the log.
0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 

Assisted Solution

by:Lee R Liddick Jr
Lee R Liddick Jr earned 0 total points
ID: 39901107
I figured it out myself, not even using 'if' or 'case' statements:
(
     a.c_eff_dt is NOT NULL
          AND a.c_eff_dt < date(current date - 6 months)
OR
     a.c_eff_dt is NULL
          AND b.c_eff_dt < date(current date - 6 months)
)
0
 

Author Comment

by:Lee R Liddick Jr
ID: 39902941
I've requested that this question be closed as follows:

Accepted answer: 0 points for leerljr68's comment #a39901107

for the following reason:

Accepting own comment since I figured it out myself with no assistance from the other expert comments.  Thank you.
0
 
LVL 53

Accepted Solution

by:
_agx_ earned 800 total points
ID: 39901518
FYI, always wrap statements that mix AND/OR in parenthesis. Otherwise you're leaving the order of evaluation up to the db, which may or may not be what you want:

(
     <!--- first condition --->
     ( a.c_eff_dt is NOT NULL AND a.c_eff_dt < date(current date - 6 months)  )
OR
     ( a.c_eff_dt is NULL AND b.c_eff_dt < date(current date - 6 months)  )
)
0
 

Author Comment

by:Lee R Liddick Jr
ID: 39902942
I'm awarding points to those who responded.
0
 

Author Closing Comment

by:Lee R Liddick Jr
ID: 39915665
Even though I answered my own question, I'm awarding points for taking the time to respond.  Thank you all.
0

Featured Post

Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Recursive SQL is one of the most fascinating and powerful and yet dangerous feature offered in many modern databases today using a Common Table Expression (CTE) first introduced in the ANSI SQL 99 standard. The first implementations of CTE began ap…
This shares a stored procedure to retrieve permissions for a given user on the current database or across all databases on a server.
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …
SQL Database Recovery Software repairs the MDF & NDF Files, corrupted due to hardware related issues or software related errors. Provides preview of recovered database objects and allows saving in either MSSQL, CSV, HTML or XLS format. Ensures recov…
Suggested Courses

607 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question