oracle语句-oracle 语句问题,哪个高手可以指点

问题描述

oracle 语句问题,哪个高手可以指点

我要查询一个日期区间内每个月最后一天的数据,哪位高手给指点一下吧

解决方案

select *
from (select a.*,
row_number() over(partition by to_char(a.data, 'yyyyMM') order by a.data desc) rn
from tmp a
where a.date <= to_date('2013-01-01', 'yyyy-mm-dd')
and a.date >= to_date('2012-01-01', 'yyyy-mm-dd'))
where rn = 1;

时间: 2024-09-19 09:08:17

oracle语句-oracle 语句问题,哪个高手可以指点的相关文章

Oracle常用sql语句

Oracle数据库常用sql语句 ORACLE 常用的SQL语法和数据对象 一.数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, --) VALUES ( 值1, 值2, --); INSERT INTO 表名(字段名1, 字段名2, --) SELECT (字段名1, 字段名2, --) FROM 另外的表名; 字符串类型的字段值必须用单引号括起来, 例如: 'GOOD DAY' 如果字段值里包含单引号' 需要

oracle的DDL语句为什么不能回滚

在ITPUB上看到有人提出了这个问题.在Sqlserver或一些其他的数据库中,DDL语句也是可以回滚的,那么Oracle为什么不能回滚DDL语句呢. 要说明这个问题,首先需要说明什么是DDL语句.DDL语句是数据定义语句,包括各种数据对象的创建.修改和删除,以及授权等操作. 在Oracle中DDL语句将转化为修改数据字典表的DML语句.一个简单的修改表的DDL语句,会导致Oracle在后台通过递归SQL语句进行大量的查询和修改的操作. 如果有兴趣,可以通过SQL_TRACE根据一下DDL语句,

查找Oracle高消耗语句的方法

 这篇文章主要介绍了查找Oracle高消耗语句的方法,需要的朋友可以参考下 在运行下面的脚本之前需要先用生成AWR报告的SQL(程序脚本一般保存在$ORACLE_HOME下的rdbms/admin中,名称为awrrpt.sql,需要输入生成AWR报告的天数范围)找到开始和结束的snapshot编号:begin_snap和end_snap.  代码如下: <span style="font-size:18px;">set line 1000  set linesize 200

把这四条sql语句从sqlsever变成oracle的sql语句,求帮忙

问题描述 把这四条sql语句从sqlsever变成oracle的sql语句,求帮忙 1C 1.SELECT top 1 MENUID+1 from app_menu ORDER BY CAST(MENUID AS int) desc 2.SELECT top 1 idfileNamefilePathcreateTimemd5fileSize FROM VIS_file WHERE md5=#md5# 3. SELECT top 1 USERIDREALNAMEGENDEROTELOEMAILQQ

Oracle查询SQL语句,请教各位大神

问题描述 Oracle查询SQL语句,请教各位大神 有这样一些数据: name subject张三 语文 李四 数学 张三 数学 李四 英语 张三 历史 想得到的结果: name subject张三 语文,数学,历史 李四 数学,英语 请教SQL语句,各路大神帮忙思考下. 解决方案 SELECT name , wmsys.wm_concat (subject) as result FROM 表名 GROUP BY name 解决方案二: 这个主要用SQL语句将subject里的数据拼接成一个字符

Oracle 历史SQL语句执行计划的对比与分析

    基于CBO优化器的环境中,SQL执行计划的生成依赖于统计信息的真实与完整.如列的离散度,列上的直方图,索引的可用性,索引上的聚簇因子.当这些信息是真实完整的情况下,CBO优化器通常都可以制定最优的执行计划.也正因此CBO优化器也灵活,难以控制,任一信息的不真实或缺失都可能导致执行计划发生变化而产生多个版本.经常碰到的情形是之前的某个SQL语句前阵子还不是TOP SQL,而最近变成了TOP SQL.或者说之前尽管是TOP SQL但,但最近尽然成了TOP 1.对于此情形,我们可以比对SQL语

oracle的查询语句问题

问题描述 oracle的查询语句问题 现在有三张表,分别是用户的点餐表,缴费表,价格表,如何通过这三张表来更新余额表 解决方案 create table 表A( id int, username varchar(20), payamount int ); create table 表B( id int, username varchar(20), dishname varchar(100), amount int ); create table 表C( id int, dishname varc

数据库-Oracle转sqlserver语句

问题描述 Oracle转sqlserver语句 关于START WITH...CONNECT BY PRIOR语句转成sqlserver的问题 数据库换成了SQLServer 然后一些sql语句报错了 SELECT ORG_ID FROM pub_organ START WITH ORG_ID='33333' CONNECT BY PRIOR org_ID=PARENT_CODE sqlserver好像不识别这个词组 求大神帮忙转换成可执行的sqlserver的语句 小弟在此谢过 解决方案 在S

sqlserver中一条sql语句把插入数据的ID返回出来,oracle中sql语句要怎么写?

问题描述 sqlserver中一条sql语句把插入数据的ID返回出来,oracle中sql语句要怎么写? sqlserver中一条sql语句把插入数据的ID返回出来,oracle中sql语句要怎么写? 解决方案 oracle,sqlserver分页查询sql语句重复的数据只取一条,SQL语句如何写 解决方案二: select test.currval from dual 解决方案三: oracle里面不是差不多的吗