---重复数据中取最大最小值,而且不同类型只显示一条

--CREATE TABLE test_aa(
--a INT,
--b VARCHAR(20)    
--)
--INSERT into test_aa(a,b) VALUES(1,'aa')
--INSERT into test_aa(a,b) VALUES(14,'aa')
--INSERT into test_aa(a,b) VALUES(11,'ab')
--INSERT into test_aa(a,b) VALUES(12,'ac')
--INSERT into test_aa(a,b) VALUES(11,'ae')
--INSERT into test_aa(a,b) VALUES(1,'aa')
--INSERT into test_aa(a,b) VALUES(1,'aa')
--INSERT into test_aa(a,b) VALUES(1,'aa')
--INSERT into test_aa(a,b) VALUES(1,'aa')


SELECT a,b  FROM test_aa ta
--max
SELECT a FROM test_aa ta WHERE ta.a>(SELECT min(ta2.a) FROM test_aa ta2 WHERE ta2.b=ta.b)
--min
SELECT a FROM test_aa ta WHERE ta.a<(SELECT max(ta2.a) FROM test_aa ta2 WHERE ta2.b=ta.b)



SELECT a,b  FROM test_aa ta WHERE ta.a=(SELECT min(ta2.a) FROM test_aa ta2 WHERE ta2.b=ta.b) AND
ta.a NOT IN (SELECT a FROM test_aa ta WHERE ta.a>(SELECT min(ta2.a) FROM test_aa ta2 WHERE ta2.b=ta.b))


SELECT a,b  FROM test_aa ta WHERE ta.a=(SELECT max(ta2.a) FROM test_aa ta2 WHERE ta2.b=ta.b) AND
ta.a NOT IN (SELECT a FROM test_aa ta WHERE ta.a<(SELECT max(ta2.a) FROM test_aa ta2 WHERE ta2.b=ta.b))

相关文章:

  • 2022-01-16
  • 2021-10-25
  • 2021-08-29
  • 2021-09-02
  • 2022-12-23
  • 2021-12-02
猜你喜欢
  • 2021-11-07
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-19
  • 2021-04-08
相关资源
相似解决方案