我time字段里的数据都为2004-06-10 17:18:58.000 我想通过2004-06-10查询到它该怎么实现呀
解决方案 »
- delphi 自动更新
- 初学。怎么把EXCEL转换成文本.txt的?100
- 万分紧急!RPC服务器不可用问题!!
- 如何会出一个完美的圆?
- 怎样判断dbedit和dbgrid里输入的是不是数字,如果是字母的话,提示客户返回从新输入?
- Webbrowser 源码问题
- 关于用dll做mdi子窗口,当mainform关闭时……
- 高分给高手:我的应用服务器有问题吗?
- 我在程序中调用Dll, 在Dll没有执行完之前退出程序,却退不出
- 各位高手大侠:dll参数与返回值设为pchar后转换的问题,请大家帮忙挑挑错误!
- RichEdit控件怎么实现在录入完毕某些单词的时候,改变录入单词的颜色?
- 如何铺获鼠标滑轮事件
select * from table1
where Trunc(yourTime)=To_Date('2004-06-10','yyyy-mm-dd')
因为这种情况我以前也遇到过,解决方法是使用like '2004-06-10'+'%'
或是另一种解决的方法是另到time 字段不出现 17:18:58.000
在设计时使用 fieldbyname('time').asdatetime:=date;这种方法编写
date为tdate类型就会出现这种情况,
要是改成fieldbyname('time').asstring:=datetostr(date);就可以克服出现时间的多余部份
对于以后各种查询都会方便很多。
还有在ACCESS中日期的查询要加上##,例如 select * from tablename where time=#2004-6-10#
Query1.ParamByName('datetime1').AsDateTime := StrToDateTime('2004-06-10');
Query1.ParamByName('datetime2').AsDateTime := StrToDateTime('2004-06-10') + 1;
Query1.Open;
str:=datetimetostr(2004-06-10 17:18:58.000);
查询语句 'select * from tablename where 字段名 like str[1]+str[2]+str[3]+str[4]+str[5]+……str[10]+''%';
大致是这样,原理就是取出前几个字符做为查询条件
查询条件:'2004-06-10'可以转换成日期,整形数据;
数据库表中的时间字段也可以取出,转换成Real来行,然后取整,进行相等判断。