Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

Filter results in select

Posted on 2011-03-14
7
Medium Priority
?
306 Views
Last Modified: 2012-05-11
select * from table

name1  4 o
name1  5 x
name1  3 x
name2  3 x
name3  2 x

I have above results in that name1 have values 3,4 and 5
I want to get the result as below where where the flag 'O' has been taken in case of multiple values for same name.here it is name1

name1  4 o
name2  3 x
name3  2 x

Please help!
0
Comment
Question by:PeteEngineer
7 Comments
 
LVL 3

Accepted Solution

by:
CarlsbergFTW earned 668 total points
ID: 35128002
select * from table where upper(name1) like ('% o')

The data you provided is consisted in 1 or more tables ?

please post more details if this is not what you're looking for.
0
 
LVL 3

Assisted Solution

by:CarlsbergFTW
CarlsbergFTW earned 668 total points
ID: 35128024
select * from table where upper(name1) like upper('% o')
0
 
LVL 39

Assisted Solution

by:Pratima Pharande
Pratima Pharande earned 332 total points
ID: 35128033
col1 change it to your name of name column and col3 is 'o' and 'x'

try this

select * from tablename
where col1 in (select col1 from tablename
Group by count(*)>1)
and col3 = 'o'
Union
select * from tablename
where col1 in (select col1 from tablename
Group by count(*)= 1)
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
LVL 143

Assisted Solution

by:Guy Hengel [angelIII / a3]
Guy Hengel [angelIII / a3] earned 332 total points
ID: 35128036
this might do:
select t.*
  from (select name_field, number_field, flag_field
             , row_number() over (partition by name_field order by case when flag_field = 'o' then 0 else 1 end) rn
          from yourtable 
        ) t
where t.rn = 1

Open in new window

0
 
LVL 8

Author Comment

by:PeteEngineer
ID: 35128037
no only one table... name1 is a value not a coulmn name  and o is a value in another column
0
 
LVL 7

Assisted Solution

by:mkobrin
mkobrin earned 332 total points
ID: 35128070
please supplt the column names and then we can help you with the query
0
 
LVL 30

Assisted Solution

by:Olaf Doschke
Olaf Doschke earned 336 total points
ID: 35128089
I think you're having three columns. But see how hard that is to tell, as CarlsbergFTW thinks of one column containing the whole lines?

If col1 contains name1,name2, etc and col2 containes the value 3,4,5 etc and col3 contains either 'x' or 'o', then it could be:

Select t1.* from table t1 where col3='o'
union
Select t1.* from table t1 where not exists (select 1 from table t2 where t1.col1=t2.col1 and t2.col3='o')

Open in new window


It smells like you need something more thoug, as your final result also has distinct values of col1 you might want to group by col1 and pick one record per group. While my solution should work (untested), it would fail, if you had more records for eg name2 with x but another int value, eg name2,2,'x' additionally to name2,3,'x' would also come into the final result.

You need to be more specific in what you want, then.

Bye, Olaf.
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

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

Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
An alternative to the "For XML" way of pivoting and concatenating result sets into strings, and an easy introduction to "common table expressions" (CTEs). Being someone who is always looking for alternatives to "work your data", I came across this …
Screencast - Getting to Know the Pipeline
With just a little bit of  SQL and VBA, many doors open to cool things like synchronize a list box to display data relevant to other information on a form.  If you have never written code or looked at an SQL statement before, no problem! ...  give i…

564 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