SQL查询最大值最小值问题


  本文标签:SQL查询

  如果使用SQL语句实现SQL查询最大值最小值,是否可以呢?答案是肯定的,下面有一个解决的例子:

  1. select top 1 * from products order by UnitPrice   
  2. union   
  3. select top 1 * from products order by UnitPrice desc   

  上面这个似乎正确,可是其实在使用了Union的时候只有最后一条Select命令才能使用Order by参数,因此上面这样是不行的,在查询分析器中运行会爆出错误

  下面提供查询出最大值和最小值的方法:

  1. declare @HighLow table   
  2. (   
  3. ProductName varchar(50)   
  4. )   
  5. insert @HighLow select top 1 Productname from Products order by Unitprice desc   
  6. insert @HighLow select top 1 Productname from Products order by Unitprice   
  7. select ProductName from @HighLow  

  这种方法不是一次就查询出最大值和最小值,而是使用了一个Table变量,将查询出的最大值和最小值保存入这个表中  。