SELECT TOP 100 PERCENT SUM(tt.room_num) AS 房间数量, 
hotel.hot_roomnum * DATEDIFF(day, '2002-07-07', '2002-09-27') 
AS 房间总数, dbo.hotel.hot_star as 酒店星级
我是想求出任意一段时间的房间总数。我用DATEDIFF(day, '2002-07-07', '2002-09-27')把这个时间区间作为参数。我是用
sql server2000

解决方案 »

  1.   

    SELECT TOP 100 PERCENT SUM(tt.room_num) AS 房间数量, 
    hotel.hot_roomnum * DATEDIFF(day, :Start,:End) 
    AS 房间总数, dbo.hotel.hot_star as 酒店星级........
    // 比如用个
    Parameters.ParaByname('Start’).value:=DateTimePicker1.Date ;open ;
      

  2.   

    试一下:
    ...
    var 
      string: strDate1, strDate2;
      string: strSQL;
    ...strDate1 := '2002-07-07';
    strDate2 := '2002-09-27';
    ...strSQL := 'SELECT TOP 100 PERCENT SUM(tt.room_num) AS 房间数量, 
    hotel.hot_roomnum * DATEDIFF(day, ''' + strDate1 + ''', ''' + strDate2 + ''') 
    AS 房间总数, dbo.hotel.hot_star as 酒店星级';
      

  3.   

    Parameters.ParaByname('Start’).value:=
    datestrto(DateTimePicker1.Datetime);
      

  4.   

    SELECT TOP 100 PERCENT SUM(tt.room_num) AS 房间数量, 
    hotel.hot_roomnum * :dt AS 房间总数, dbo.hotel.hot_star as 酒店星级Parameters.ParaByname('dt').value := strtodate('2002/09/27')-strtodate('2002/07/07');
    试试