转换一下就行了
convert(varchar(10),字段名,120)
convert(varchar(10),字段名,120)
解决方案 »
- (IE7,8不好用.ie6可以)AJAX updatePANEL GRIDVIEW 点击'增加'按钮正确,打回车执行javascript后不能输入
- GridView中HyperLinkField如何绑定到页面文本框?
- <LINK href='CSS.aspx' type="text/css" rel="stylesheet">!css.aspx页面怎么样儿才能实现动态换CSS,它要返回什么呀?
- 一个LIKE语句的小问题
- 自定义控件按钮失效问题,很奇怪,你碰到过么?
- 制作虚拟"网络堵塞现象"
- Page validateRequest="false"
- 有没有谁知道ASP.Net当中如何防止商务快车注册?
- 如何解决这个常见的问题。
- 【熊猫大宝】砖厂。。。砖厂。。。
- 关于在DataGrid中数据格式转换的问题
- 如何用ASP.NET调用一个用C#写的DLL文件
Response.Write( dt.ToString("yyyy-MM-dd"));
assetAllInfVO.STARTUP_DATE 此乃原值,为datatime类型,用去查询数据库中字段值为STARTUP_DATE的值. 但在拼凑的sql语句中老是会在原值上添加hh:mm:ss格式,如下:
2005-8-5 0:00:00'
请问如何将一个datatime查询数据库表中的datatime类型的字段
{
strSql+=" and a.T_ASSET_ENTRY_VO_ID in (select T_ASSET_ENTRY_VO_ID from T_ASSET_BASE_INF_VO "
+" where STARTUP_DATE=to_data("+assetAllInfVO.STARTUP_DATE+") )";
}
我该怎么查询?它老是自动添加上hh:mm:ss
高手帮助呀
{
strSql+=" and a.T_ASSET_ENTRY_VO_ID in (select T_ASSET_ENTRY_VO_ID from T_ASSET_BASE_INF_VO "
+" where datediff(d,STARTUP_DATE,to_data,"+assetAllInfVO.STARTUP_DATE+")=0 )";
}
{
strSql+=" and a.T_ASSET_ENTRY_VO_ID in (select T_ASSET_ENTRY_VO_ID from T_ASSET_BASE_INF_VO "
+" where datediff(d,STARTUP_DATE,convert(varchar(10),"+assetAllInfVO.STARTUP_DATE+",120))=0 )";
}
if(assetAllInfVO.STARTUP_DATE.ToString()!="")//启用日期
{
strSql+=" and a.T_ASSET_ENTRY_VO_ID in (select T_ASSET_ENTRY_VO_ID from T_ASSET_BASE_INF_VO "
+" where STARTUP_DATE=assetAllInfVO.STARTUP_DATE )";
}其中assetAllInfVO.STARTUP_DATE为从data控件取出来的值,值类型为datatime.而STARTUP_DATE为数据库中的字段,数据类型为datatime,格式为yyyy-mm-dd
但是在执行了拼凑的sql语句后,assetAllInfVO.STARTUP_DATE 的值会额外加上形如hh:mm:ss格式的时间。为了从控件中读取的日期查出数据库中的日期,我该如何做?我该如何做查询呢?跪求高手赐教!小弟感激不尽!!!
{
strSql+=" and a.T_ASSET_ENTRY_VO_ID in (select T_ASSET_ENTRY_VO_ID from T_ASSET_BASE_INF_VO "
+" where STARTUP_DATE='"+assetAllInfVO.STARTUP_DATE"'+ )";
}try again;
haonanernet(与时俱进) 写的对的
sql中比较时间可用datediff也可用datepart有时convert也能实现
建议(查询当天记录):select * from tablename where datediff(d,time,getdate())=0
用Substing()这个函数才对吧
{strSql+=" and a.T_ASSET_ENTRY_VO_ID in (select T_ASSET_ENTRY_VO_ID from T_ASSET_BASE_INF_VO "
+" where STARTUP_DATE=assetAllInfVO.STARTUP_DATE )";
}
改成这样好了。
if(assetAllInfVO.STARTUP_DATE.ToString()!="")//启用日期
{strSql+=" and a.T_ASSET_ENTRY_VO_ID in (select T_ASSET_ENTRY_VO_ID from T_ASSET_BASE_INF_VO "
+" where STARTUP_DATE like '"+assetAllInfVO.STARTUP_DATE+ "%'";
}
用模糊查询。
if(assetAllInfVO.STARTUP_DATE.ToString()!="")//启用日期
{strSql+=" and a.T_ASSET_ENTRY_VO_ID in (select T_ASSET_ENTRY_VO_ID from T_ASSET_BASE_INF_VO "
+" where datediff(dd,convert(varchar(10),STARTUP_DATE,120),convert(varchar(10),"+assetAllInfVO.STARTUP_DATE.ToString()+",120))=0";
}