如何过滤出当天的记录。 谢谢!
var
tdatetime:string;adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where dodatetime>='''+tdatetime+'''');行吗?
var
tdatetime:string;adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where dodatetime>='''+tdatetime+'''');行吗?
tdatetime:= FormatDateTime('yyyy"-"mm"-"dd" ,now);
tdatetime:= FormatDateTime('yyyy"-"mm"-"dd"',now);
adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where dodatetime>='''+tdatetime+'''');//===
Tdatetime:=datetostr(date);
...
adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where convert(varchar(10),dodatetime)=+'''+tdatetime+'''');
adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where dodatetime='+''''+tdatetime+'''');
//伪码:
//假如今天2004-11-17
where dodatetime>=2004-11-16 00:00:00 and dodatetime<=2004-11-17 23:59:59这样才能查出来。具体的,你自己写吧。
decodedate(now,yy,mm,dd);
..
adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where dodatetime>=:date')
adoQToday.parametres.parambyname('date').asdatetime:=Encodedate(yy,mm,dd)+Encodetime(0,0,0,0);
open
...
我使用是ACCESS的数据库。
用这个方法:
tdatetime:= FormatDateTime('yyyy-mm-dd',now);
adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where dodatetime='+''''+tdatetime+'''');
提示类型不符。
我的要求就是过滤出当天的记录。 谢谢。
但是在SQL SERVER上是绝对可以的..
adoQToday.Parameters[0].datatype:=ftDateTime;
adoQToday.Parameters[0].value:=Date;
adoQToday.Prepared:=True;
adoQToday.Open;
if (strtodatetime(adoquery1.FieldValues['dodatetime'])=strtodatetime(formatdatetime('yyyy-m-d',now))) then
begin
//....
end;
>>var
>> tdatetime:string;>>adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts >>where dodatetime>='''+tdatetime+'''');你最好表“accounts”的字段“dodatetime”保存的值最好是“yyyy-mm-dd"的
如:”2004-11-18“
然后你SQL可写成
select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where dodatetime=FormatDateTime('yyyy-mm-dd',now)
试试,看行不行
adoquery.sql.add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where [dodatetime] between #'+FormatDateTime('yyyy-mm-dd',now)+'00:00:00'+'# and #'+FormatDateTime('yyyy-mm-dd',now)+' 23:59:59#');
它运行时提示不正常定义的参数对象。psp2003()
我需要准确的时间。这个字段不能改! 谢谢大家了!
tmpSql:='select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where dodatetime='+''''+tdatetime+'''';
adoQToday.SQL.Add(tmpSql);
adoquery.sql.add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where [dodatetime] between #'+FormatDateTime('yyyy-mm-dd',now)+'00:00:00'+'# and #'+FormatDateTime('yyyy-mm-dd',now)+' 23:59:59#');
它运行时提示不正常定义的参数对象。
有错谁帮我改改。谢谢了。