- 浏览: 17769 次
- 性别:
- 来自: 北京
最新评论
文章列表
Oracle 存储过程中查询表不存在时候,最常见的有2种情况:
1、表真的不存在;
2、没有权限:
原因:角色权限在存储过程中是失效的
解决方案:
-- USER_NAME 为没有权限的用户
GRANT SELECT ANY TABLE TO USER_NAME;
-- 调用方法没有权限
GRANT EXECUTE ANY PROCEDURE TO USER_NAME;
根据开始时间和结束时间查询小时列表:
SELECT TO_DATE(START_TIME, 'YYYY-MM-DD HH24:MI:SS') + (LEVEL - 1) / 24 AS DATETIME
FROM DUAL
CONNECT BY LEVEL <= (TO_DATE(END_TIME, 'YYYY-MM-DD HH24:MI:SS') - TO_DATE(START_TIME, 'YYYY-MM-DD HH24:MI:SS')) * 24 + 1
根据开始时间和结束时间查询日期列表:
SELECT TO_DATE(START_DATE, 'YYYY-MM- ...
/*分为四步 */
/*第1步:创建临时表空间 */
CREATE TEMPORARY TABLESPACE [临时表空间名称]
TEMPFILE 'D:\ORACLEDATA\[临时表空间名称]_[编号(如01)].DBF'
SIZE 50M
AUTOEXTEND ON
NEXT 50M MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
/*第2步:创建数据表空间 */
CREATE TABLESPACE [数据表空间名称]
LOGGING
DATAFILE 'D:\O ...
数据格式:
分组取第一条的效果:
SQL:
SELECT * FROM (
SELECT ROW_NUMBER() OVER(PARTITION BY x ORDER BY y DESC) rn,
t.*
FROM test1 t
) WHERE rn = 1;
转载自:http://www.cnblogs.com/dyllove98/archive/2013/07/22/3206423.html
1.新建一个名为TEST表
2.向TEST表中添加数据
INSERT INTO TEST(STUDENT,COURSE,SCORE)
select '张三','语文',78 from dual union
select '张三','数学',87 from dual union
select '张三','英语',82 from dual union
select '张三','物理',90 from dual union
select '李四','语文',65 from dual union
select '李四','数学',77 from dual union
select '李四 ...