各位DX:
    我数据库的A表如下:ID(编号)    DATE(时间)           TOTAL(雨量)
01        2008-8-1             0.2
01        2008-8-2             0.3
01        2008-8-2             0.5
01        2008-8-5             1.2
02        2008-8-9             2.2我现在用了一个DBGrid来显示数据,并且放置了一个DateTimePicker控件,我的目的是:通过对DateTimePicker
日期的选择,DBGrid里就显示所对应的TOTAL(雨量)数据.如果我在DateTimePicker里选择了"2008-8-5 ",要求DBGrid显示结果如下(不能有任何重复的数据):ID(编号)    DATE(时间)           TOTAL(雨量)
01        2008-8-5             1.2

解决方案 »

  1.   

    ADOQuery.close;
    ADOqyery.sql.clear;
    ADOquery.sql.add('select * from table where date=#''+datetimetostr (DateTimePicker.date)+''#');
    adoquery.open;
    不晓得是不是这样....我也是个新手....嘿嘿....
      

  2.   

    楼上的是access里的写法,sql server的话:ADOQuery.close; 
    ADOqyery.sql.clear; 
    ADOquery.sql.add('select * from table where date='''+datetimetostr(DateTimePicker.date)+''''); 
    adoquery.open;
      

  3.   

    是这样的:
    ADOQuery.close;
    ADOqyery.sql.clear;
    ADOquery.sql.add('select [ID],[DATE],sum([TOTAL]) as [TOTAL]  from table1 where [date]='''+datetimetostr(DateTimePicker.date)+'''group by [ID],[DATE] ' );
    adoquery.open;
    查询语句必须使用求和sum才可以
      

  4.   

    楼上的正解,不过我感觉楼主的数据库是不是有问题啊,某日的降雨量会有两个记录?
    如果楼主不需要重复的话,要不就显示某日合计,如楼上的。如果不是合计,那就用top1,或者DISTINCT