java的,请教一条sql语句,我用的mysql , sql语句在程序中自己写. 80

我可以从jsp页面上获取到2个时间参数(java.util.Date),现在我要把这2个时间参数和我在数据库中的某个时间字段进行比较,而匹配出相应的结果,我的sql语句总... 我可以从jsp页面上获取到 2个时间参数(java.util.Date) , 现在我要把这2个时间参数和我在数据库中的某个时间字段进行比较,而匹配出相应的结果,我的sql语句总是出错.
-------以下部分是我写的sql语句(参数: startTime , endTime)-------
from User u where u.createTime between startTime and endTime group by XX ;
在不考虑是否用了引号的情况下,我传入startTime和endTime 参数进行比较是否要转换成对应的类型,我找了好多,都没成功,急求!
展开
 我来答
CmengQiao
2012-11-05 · 超过18用户采纳过TA的回答
知道答主
回答量:58
采纳率:0%
帮助的人:35.6万
展开全部
你传的时间参数是需要加 单引号的,而且传进sql语句的时候需要转换跟你数据库createTime 格式一样滴时间格式。这样就能匹配
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
楼喽读昂
2012-11-05 · 超过39用户采纳过TA的回答
知道小有建树答主
回答量:113
采纳率:0%
帮助的人:67.6万
展开全部
首先基础性问题,between startTime and endTime,startTime是否小于endTime,至于类型的转换,mysql中有的不是那么严,但最好把时间类型转换成一致的。其实你的具体问题是什么我不是很清楚,仅从你的描述上不知道在sql方面遇到的问题
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我非梁山伯
2012-11-09 · TA获得超过148个赞
知道小有建树答主
回答量:164
采纳率:0%
帮助的人:103万
展开全部
你的starTime和endTime需要转型,不能只是date类型。
new SimpleDateFormat("yyyy-MM-dd").format(Calendar.getInstance().getTime())
new SimpleDateFormat("yyyy-MM-dd hh:MM:ss").format(Calendar.getInstance().getTime())

Calendar.getInstance().getTime()是你的starTime和endTime的date类型值

yyyy-MM-dd hh:MM:ss大小写要严格遵守
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-11-05
展开全部
直接把sql生成的sql语句输出,很容易定位错误的。
mysql对于类型要求不高,
你说的sql语句出错,输出sql语句是最方便的定位方法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yxka8
2012-11-05 · TA获得超过1340个赞
知道答主
回答量:196
采纳率:0%
帮助的人:146万
展开全部
日期类型你这样写是有问题的, 给你这个SQL 自己参照着改吧。

from User u where u.createTime between
to_date('2012/12/23','yyyy/mm/dd') and to_date('2013/12/23','yyyy/mm/dd') ;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式