sql:有两个字段:温度、时间。
给定一个起始时间和截止时间,如何查询每一天中的最大温度和最大温度对应的时间?

解决方案 »

  1.   

    Select Top 1 温度,时间 From 表 Where 时间在什么范围内 Order By 温度 Desc
      

  2.   

              fltTemperature        dtSysTime          strId(主键)   strAddress(主键)
    第1条:    24                 2009-8-3 9:47:53        1            0191
    第2条:    23                 2009-8-3 10:56:09       1            0191
    第3条:     22                 2009-8-2 10:56:09       2            0191
                                          
    也就是给定一个查询时间“2009-8-2  到 2009-8-3”,怎么把第1条和第3条记录取出来  
      

  3.   

      declare @Table Table(Temperature decimal(10,2) , times Datetime)   insert  @Table values( 36.2 , '2009-8-1')
       insert  @Table values( 35.2 , '2009-8-1')
       insert  @Table values( 35.2 , '2009-8-2')   select Convert( varchar , times ,104) , max( Temperature) as Temperature
        from @Table
        group by Convert( varchar , times ,104)
      

  4.   

    SELECT 温度, 时间
    FROM ...
    WHERE 温度 = ( SELECT MAX(温度) FROM ... WHERE 起始时间 - 截止时间)
      

  5.   

    SELECT 
         MAX(fltTemperature)fltTemperature ,
         CONVERT(VARCHAR(10),dtSysTime,120),
         strId,
         strAddress 
    FROM 
        TB
    WHERE dtSysTime BETWEEN STRATTIME AND ENDTIME 
    GROUP BY 
    CONVERT(VARCHAR(10),dtSysTime,120),
    strId,
    strAddress