Solved

How to put a condition on a condition in SQL

Posted on 2009-05-08
2
699 Views
Last Modified: 2013-12-19
I'm trying to write a query to list sales orders that have SKUs that have a Hazmat ID attached to them.  I'm looking for 2 different Hazmat ID's. I can get the orders with the Hazmat skus to come up but I want to refine the search. The only orders I need to be return are orders that has SKUs with quantities of =<3 for Hazmat code 'LIA311' and =<5 for Hazmat code 'LIA511'
select IN_.HAZMAT_ID, OR_.SO_BR_ID||OR_.SO_ID, OR_.CUST_NAME, OR_.STATUS, OR_.CARRIER_ROUTE,OR_1.PART_ID, OR_1.QTY_ORDERED, OR_.PICK_BATCH_ID

from CSI.IN_INFORMATION IN_, CSI.OR_HEADER OR_, CSI.OR_LINE OR_1

where OR_1.PART_ID = IN_.PART_ID

	and OR_.SO_BR_ID = OR_1.SO_BR_ID

	and OR_.SO_ID = OR_1.SO_ID

	and (IN_.HAZMAT_ID IN ('LIA311', 'LIA511'))

	and (OR_.STATUS = 'R')

    and (OR_.CARRIER_ROUTE in ('F1', 'F2', 'FO', 'FS', 'UO', 'UB', 'US', 'U3', 'CL', 'PG'))

Open in new window

hazmat.doc
0
Comment
Question by:Jbancr1
2 Comments
 
LVL 11

Accepted Solution

by:
Andytw earned 500 total points
ID: 24337487
Hi try this ...
SELECT IN_.HAZMAT_ID,

       OR_.SO_BR_ID || OR_.SO_ID,

       OR_.CUST_NAME,

       OR_.STATUS,

       OR_.CARRIER_ROUTE,

       OR_1.PART_ID,

       OR_1.QTY_ORDERED,

       OR_.PICK_BATCH_ID

FROM   CSI.IN_INFORMATION IN_,

       CSI.OR_HEADER      OR_,

       CSI.OR_LINE        OR_1

WHERE  OR_1.PART_ID = IN_.PART_ID

AND    OR_.SO_BR_ID = OR_1.SO_BR_ID

AND    OR_.SO_ID = OR_1.SO_ID

AND    ( (IN_.HAZMAT_ID = 'LIA311' AND OR_1.QTY_ORDERED <= 3) OR

         (IN_.HAZMAT_ID = 'LIA511' AND OR_1.QTY_ORDERED <= 5) )

AND    (OR_.STATUS = 'R')

AND    (OR_.CARRIER_ROUTE IN ('F1', 'F2', 'FO', 'FS', 'UO', 'UB', 'US', 'U3', 'CL', 'PG'))

Open in new window

0
 

Author Closing Comment

by:Jbancr1
ID: 31579396
Thanks just what I was looking for.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

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

Suggested Solutions

How to increase the row limit in Jasper Server.
Today, still in the boom of Apple, PC's and products, nearly 50% of the computer users use Windows as graphical operating systems. If you are among those users who love windows, but are grappling to keep the system's hard drive optimized, then you s…
This video explains at a high level about the four available data types in Oracle and how dates can be manipulated by the user to get data into and out of the database.
This video shows how to copy an entire tablespace from one database to another database using Transportable Tablespace functionality.

920 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

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now