如何用Slect语句在Oracle数据库中查出具体某个月(年)的数据?

初学Oracle,对它的语法不是很清楚,不知道怎么用SLECT语句查询具体某月的数据,不知道有没有高手能帮忙?是不是要用到LIKE关键字啊?请注意,是在一张表中查找啊。对... 初学Oracle,对它的语法不是很清楚,不知道怎么用SLECT语句查询具体某月的数据,不知道有没有高手能帮忙?是不是要用到LIKE关键字啊?
请注意,是在一张表中查找啊。
对,一楼的朋友说得对,那个字段就是日期类型的,可以不是要用到Like关键字吗?还有要用到区配符吧,像下划线和百分号之类的(—,%)?
不过,还是要谢谢这位朋友热心帮忙哟。
展开
 我来答
淡如水10000
2008-10-17 · TA获得超过107个赞
知道答主
回答量:124
采纳率:0%
帮助的人:0
展开全部
那个字段是日期类型的吗
如查询A表中的date字段的月份是1的信息

select * from A where Month(date) = 1

我这不是只用了一张A表中吗 ???
shaoshuai_bd
2008-10-21 · TA获得超过669个赞
知道小有建树答主
回答量:388
采纳率:0%
帮助的人:458万
展开全部
1、通常情况下,Like主要用在字符类型的查询中,不会用在日期类型中。即使要用在日期类型中,也是先转换成字符型再用like。用不用like关键看你的查询需求。
2、一般情况下,查询月份都带上年份,不然搞不清是哪一年的。
3、为了查询效率,一般尽可能左边直接用字段。
所以:
select * from [表名]
where [字段名] between to_date('20080801','yyyymmdd') and to_date('20080831','yyyymmdd')
要比
select * from [表名]
where to_char([字段名],'yyyymm') = '200808' -- 或者:to_char([字段名],'yyyymmdd') like '200808%'
效率高很多。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
东桖柳83
2008-10-17 · TA获得超过599个赞
知道小有建树答主
回答量:603
采纳率:0%
帮助的人:374万
展开全部
假如你的日期列是date
select to_char(date,'mm') from A;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式