根据年份,月份,季度怎么查询gridview中的数据,数据库字段中只有一个时间字段;
数据库表saleorder,根据年份,月份,季度查询订单情况,saleorder有一个下单日期,根据这个字段可以筛选出来吗?老大们,求求求求你们啦。...
数据库表saleorder,根据年份,月份,季度查询订单情况,saleorder有一个下单日期,根据这个字段可以筛选出来吗? 老大们,求求求求你们啦。
展开
3个回答
展开全部
select * from saleorder where to_char(下单日期,'yyyy') = ? -- 年份查询
select * from saleorder where to_char(下单日期,'yyyy') = ? and to_char(下单日期,'MM') = ? --某年中的那一月份查询
select * from saleorder where to_char(下单日期,'yyyy') = ? and to_char(下单日期,'Q') = ? --某年中的那一季度查询
select * from saleorder where to_char(下单日期,'yyyy') = ? and to_char(下单日期,'MM') = ? --某年中的那一月份查询
select * from saleorder where to_char(下单日期,'yyyy') = ? and to_char(下单日期,'Q') = ? --某年中的那一季度查询
追问
不好意思,昨天忘记说了,我用的是sqlserver,运行的时候提示 “'to_char' 不是可以识别的 内置函数名称。” 兄弟,麻烦你啦。 sql的语法应该怎么写呢?
追答
select * from saleorder where substring(下单日期,1,4)= ? -- 年份查询,下单日期要是标准时间
select * from saleorder where substring(下单日期,1,4) = ? and substring(col,6,2)= ? --某年中的那一月份查询
select * from saleorder where substring(下单日期,1,4) = ? and
CASE when ? =1 then substring(下单日期,6,2) between 1 and 3
CASE when ? =1 then substring(下单日期,6,2) between 4 and 6
CASE when ? =1 then substring(下单日期,6,2) between 7 and 9
else substring(下单日期,6,2) between 10 and 11
--某年中的那一季度查询
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sql查询语句就能解决,你想多了。你可以看看sql脚本中关于时间的比较,比如你用的是sql数据库
完全可以用 select * from orders where dtime between '2010-1-1 00:00:00' and '2010-12-31 23:59:59' 来查询一年的订单,如果是oracle数据库的话,需要调用to_date来格式化一下,很简单的。
完全可以用 select * from orders where dtime between '2010-1-1 00:00:00' and '2010-12-31 23:59:59' 来查询一年的订单,如果是oracle数据库的话,需要调用to_date来格式化一下,很简单的。
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将楼上的to_char 改成cast函数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询