sql数据库里datetime类型怎么查询
我数据库里有个datetime类型,怎么才能查询。infotime是datetime类型,我要查询infotime里的值,如果和我input入的key值一样的话,返回结果...
我数据库里有个datetime类型,怎么才能查询。infotime是datetime类型,我要查询infotime里的值,如果和我input入的key值一样的话,返回结果。
sql="select * from news where infotime like '%"& key &"%'我写的这样的,无法返回。试了很多怎么都行不行。
我infotime字段里的数据保存格式是2010-2-12是这样保存的。查询的时候我会在input的里输入一个key值。用的是sql server数据库。
输入key值的代码是
<select name="otype" class="input" id="otype" style="line-height:30px;">
<option value="title" selected="selected" class="input">标题</option>
<option value="msg" class="input">内容</option>
<option value="infotime" class="input">infotime</option>
</select><input type="submit" name="submit" value="搜索" class="input" /></td>
查询值返回结果的代码是
if otype="title" then
sql="select * from news where title like '%"& key &"%' order by id desc"
elseif otype="msg" then
sql="select * from news where content like '%"& key &"%' order by id desc"
elseif otype="infotime" then
sql="select * from news where infotime like '%"& key &"%' order by id desc"
title和msg都可以查询出来,因为保存的是字符类型。但是datetime怎么也出不来结果! 展开
sql="select * from news where infotime like '%"& key &"%'我写的这样的,无法返回。试了很多怎么都行不行。
我infotime字段里的数据保存格式是2010-2-12是这样保存的。查询的时候我会在input的里输入一个key值。用的是sql server数据库。
输入key值的代码是
<select name="otype" class="input" id="otype" style="line-height:30px;">
<option value="title" selected="selected" class="input">标题</option>
<option value="msg" class="input">内容</option>
<option value="infotime" class="input">infotime</option>
</select><input type="submit" name="submit" value="搜索" class="input" /></td>
查询值返回结果的代码是
if otype="title" then
sql="select * from news where title like '%"& key &"%' order by id desc"
elseif otype="msg" then
sql="select * from news where content like '%"& key &"%' order by id desc"
elseif otype="infotime" then
sql="select * from news where infotime like '%"& key &"%' order by id desc"
title和msg都可以查询出来,因为保存的是字符类型。但是datetime怎么也出不来结果! 展开
展开全部
用CONVERT() 函数阿。
函数语法:CONVERT(data_type(length),data_to_be_converted,style)
假设你输入的key值是yymmdd这样的格式,那么你可以这样写:
select * from news where convert(VARCHAR(100),infotime,112) like '%"& key &"%' order by id desc
如果输入的key是其它格式,那么style要改,网上有对应表,你可以去查
函数语法:CONVERT(data_type(length),data_to_be_converted,style)
假设你输入的key值是yymmdd这样的格式,那么你可以这样写:
select * from news where convert(VARCHAR(100),infotime,112) like '%"& key &"%' order by id desc
如果输入的key是其它格式,那么style要改,网上有对应表,你可以去查
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你用等就行了。
不需要like的。
elseif otype="infotime" then
sql="select * from news where CONVERT(VARCHAR(10),infotime,120) ='"& key &"' order by id desc"
其实关系到时间的,最好是用大于小于这样,就不会有time的问题了。
不需要like的。
elseif otype="infotime" then
sql="select * from news where CONVERT(VARCHAR(10),infotime,120) ='"& key &"' order by id desc"
其实关系到时间的,最好是用大于小于这样,就不会有time的问题了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你只要等就行了。
elseif otype="infotime" then
sql="select * from news where CONVERT(VARCHAR(10),infotime,120) ='"& key &"' order by id desc"
elseif otype="infotime" then
sql="select * from news where CONVERT(VARCHAR(10),infotime,120) ='"& key &"' order by id desc"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询