asp 中sql语句select的一种应用,不知错在那了?

soar_ocean 2002-01-29 06:42:35
set connsql=Server.CreateObject("adodb.connection")
connstr= "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("courthouse.mdb")
dim sqlStr
sqlStr="select * from ktgg_message where datetime like '"&year1&"*'"
set rs1=connsql.Execute(sqlStr)
要实现从courthouse.mdb中ktgg_message表中查询datetime字段,
利用like '"&year1&"*'" 匹配的记录
datetime 中类型为xxxx-xx-xx日期型,year1为字符型xxxx 的年
请高手们帮帮忙,不胜感激。
...全文
119 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
keliangui 2002-01-30
  • 打赏
  • 举报
回复
应该这样:
sqlStr="select * from ktgg_message where Year(datetime)='"& year1 &"'"
soar_ocean 2002-01-30
  • 打赏
  • 举报
回复
这有一种有些笨的方法
sqlStr="select * from ktgg_message where datetime between #"+"1/1/"+year1+"# and #"+"12/31/"+year1+"#"
lihaitaoami 2002-01-29
  • 打赏
  • 举报
回复
非字符型数据怎么能用like匹配?
如果是点日期判断的话,用year()=year() and month()=month().....的方式;
如果是段日期判断的话,用datetime与convert(datetime,year1+'-'+month1+'-'+day1)进行判断。
wzheng 2002-01-29
  • 打赏
  • 举报
回复
记住在ASP中,%代表任意多个任意字符,?代表1个任意字符。
hawkeyes 2002-01-29
  • 打赏
  • 举报
回复
应是sqlStr="select * from ktgg_message where datetime like '%"&year1&"%'"
ehom 2002-01-29
  • 打赏
  • 举报
回复
想用统配符是吗?不是*是%
sqlStr="select * from ktgg_message where datetime like '"&year1&"%'"
当然
sqlStr="select * from ktgg_message where year(datetime)="&year1更好!
donotbesilent 2002-01-29
  • 打赏
  • 举报
回复
应该这样:
sqlStr="select * from ktgg_message where Year(datetime)=" & year1
希偌 2002-01-29
  • 打赏
  • 举报
回复
把datetime的类型改为字符型就可以了

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧