Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: little sql syntax question
Doug Cowles <dcowles_at_i84.net> wrote in message news:38f8e98b.68017791_at_news.remarq.com...
> If I have a table with 3 columns(a,b,c), and I want to check the
> distinct values of 2 of out of the three, (to see if the remaining
> values are duplicated, assuming one of them is a primary key, although
> perhaps an ill-defined one in theory), I can do a couple of things.
> I could temporarily put a unique index on the remaining columns to see
> if it succeeds.
> Or, I could do a select count(distinct(b||c)) from table A; (to
> compare it with the count of the table).
> This is my question.. why the ||? It would seem I can't do a select
> distinct (b,c) from A. Am I really reduced to a string comparison? Or
> is there another way? Hope this isn't to obfuscated...
Nothing but the way is wrong.
Consider the case:
B C
---- ----
x xx
xx x
You will get only 1, not 2.
A way to get the answer is:
select count(*) from (select distinct b, c from tableA); Received on Mon Apr 17 2000 - 00:00:00 CDT