Re: Same field different values
- From: Roy Harvey <roy_harvey@xxxxxxxx>
- Date: Mon, 23 Jul 2007 15:32:39 GMT
--Query 1
SELECT field1
FROM Table1
GROUP BY field1
HAVING COUNT(distinct field2) = 2
AND COUNT(distinct CASE WHEN field2 IN ('a', 'b')
THEN field2
END) = 2
--Query 2
SELECT field1
FROM Table1
WHERE field2 IN ('a', 'b')
GROUP BY field1
HAVING COUNT(distinct field2) = 2
Roy Harvey
Beacon Falls, CT
On Mon, 23 Jul 2007 08:00:23 -0700, gelangov@xxxxxxxxxxx wrote:
create table table1.
(field1 varchar (8),
field2 varchar (4))
field1 and field2 together is unique.
Example data:
Field1 Field2
1 A
1 B
1 C
2 A
2 C
3 A
3 B
3 D
4 A
4 B
1. The query one should find all the Field1 that has Field2 value of
ONLY (A) and (B)
Here the result will be Field1, 4 (only one result)
2. The query two should find all the Field1 that has Field2 value of
(A)and (B)
Here the result will be Field1,1,3 and 4 (three results)
Right now, I am doing this way...Is there a more efficient way than
this?
-- Query one:
SELECT <a.field1> from
(SELECT <field1>, <field2> FROM table1
WHERE <field2> ='A'
UNION
SELECT <field1>, <field2> FROM table1
WHERE <field2> ='B'
UNION
SELECT <field1>, <field2> FROM table1
WHERE <field2> ='C') a
WHERE <a.field1> not in (SELECT <field1>
FROM table1 WHERE <field2> not in ('a', 'b', 'c'))
GROUP by <a.field1>
HAVING count(*) =3
order by <a.field1>
--query 2
SELECT <a.field1> from
(SELECT <field1>, <field2> FROM table1
WHERE <field2> ='a'
UNION
SELECT <field1>, <field2> FROM table1
WHERE <field2> ='b'
UNION
SELECT <field1>, <field2> FROM table1
WHERE <field2> ='c'
)a
GROUP by <a.field1>
HAVING count(*) =3
order by <a.field1>
Thank you so much !!!
- Follow-Ups:
- Re: Same field different values
- From: gelangov
- Re: Same field different values
- References:
- Same field different values
- From: gelangov
- Same field different values
- Prev by Date: Scripting schema and data together - SQL Server
- Next by Date: Re: Same field different values
- Previous by thread: Re: Same field different values
- Next by thread: Re: Same field different values
- Index(es):
Relevant Pages
|