功能需求:从T中搜索出C字段=‘c’,并且A字段中如果相同取对应B字段最大的那条记录 即:
T表中数据:
A字段 B字段 C字段
aaa 1 c
aaa 2 c
aaa 3 c
aaa 4 c
bbb 1 c
bbb 2 c需要得到查询之后的结果为:
A字段 B字段 C字段
aaa 4 c
bbb 2 c
请高人指点,非常感谢
T表中数据:
A字段 B字段 C字段
aaa 1 c
aaa 2 c
aaa 3 c
aaa 4 c
bbb 1 c
bbb 2 c需要得到查询之后的结果为:
A字段 B字段 C字段
aaa 4 c
bbb 2 c
请高人指点,非常感谢
select A字段,count(*) as B字段 ,C字段 from z where C字段='c' group by A字段,C字段
select A, max(B), C from T where C='c'group by A, C;
where c='c'
SQL> SELECT *
2 FROM T T1
3 WHERE NOT EXISTS (SELECT 1
4 FROM T T2
5 WHERE T1.A = T2.A
6 AND T1.B < T2.B
7 AND T2.C = 'C')
8 AND T1.C = 'C';A B C
--- ---------- -
AAA 4 C
BBB 2 C
from t
where t.c='C' and t.IsValid=1
from t
where t.c='C' and t.IsValid=1