?
Solved

SQL "OR" Clause question

Posted on 2012-03-26
5
Medium Priority
?
335 Views
Last Modified: 2012-03-26
Is there a more simple way to do this instead of using the or clause?
SELECT  * from mtytable where (accountNo='1' or accountNo='345' or accountNo='2' or accountNo='4' or accountNo='4000' or ...)

I'm looking for something like
SELECT  * from mtytable where accountNo in ('1', '345', '2','4',...... )


Thanks!
0
Comment
Question by:chrisli
  • 3
5 Comments
 
LVL 29

Accepted Solution

by:
MikeOM_DBA earned 800 total points
ID: 37766908
Yes, exactly as you coded using the "IN ()" construct.
:p
0
 
LVL 74

Assisted Solution

by:sdstuber
sdstuber earned 1200 total points
ID: 37766936
if your account numbers are in fact NUMBERS then you should remove the quotes, otherwise your syntax is correct as is


that would apply to both the OR and the IN versions
0
 

Author Comment

by:chrisli
ID: 37766975
I'm feeling pretty stupid now... But how come this is not returning any results?

DECLARE @accounts VARCHAR(max)
Select @accounts = COALESCE( '''' + LTRIM(RTRIM(AccountNo))+ ''', ' + @accounts,' ''' + LTRIM(RTRIM(AccountNo)) + '''') from mytable where [type]='newAccts'

SELECT     * FROM theothertable WHERE    (accountNo IN (@accounts))
0
 
LVL 74

Assisted Solution

by:sdstuber
sdstuber earned 1200 total points
ID: 37766987
because you are using a variable.  a variable (a single value) and a list of values aren't the same thing.
0
 
LVL 74

Assisted Solution

by:sdstuber
sdstuber earned 1200 total points
ID: 37766997
don't bother trying to construct the list,  simply use the query itself as the IN condition


select * from theothertable where accountno in
(select accountno from mytable where [type]='newAccts')
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Question has a verified solution.

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

In part one, we reviewed the prerequisites required for installing SQL Server vNext. In this part we will explore how to install Microsoft's SQL Server on Ubuntu 16.04.
This month, Experts Exchange sat down with resident SQL expert, Jim Horn, for an in-depth look into the makings of a successful career in SQL.
Via a live example, show how to take different types of Oracle backups using RMAN.
This video shows how to Export data from an Oracle database using the Datapump Export Utility.  The corresponding Datapump Import utility is also discussed and demonstrated.
Suggested Courses

850 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