-
Oracle SQL – 如何检索列的最高5个值
所属栏目:[百科] 日期:2021-05-23 热度:180
如何编写一个查询,其中只返回最多或最低列值的选定行数. 即有五名最高工资的雇员的报告? 最好的方法是使用分析函数RANK()或DENSE_RANK()… SQL select * from ( 2 select empno 3,sal 4,rank() over (order by sal desc) as rnk 5 from emp) 6 where rnk[详细]
-
oracle – ORA-01799:一个列可能没有外连到子查询
所属栏目:[百科] 日期:2021-05-23 热度:179
这是我的查询 SELECT COUNT(C.SETID)FROM MYCUSTOMER C LEFT OUTER JOIN MYCUSTOPTION CO ON (C.SETID = CO.SETID AND C.CUST_ID = CO.CUST_ID AND CO.effdt = ( SELECT MAX(COI.EFFDT) FROM MYCUSTOPTION COI WHERE COI.SETID = CO.SETID AND COI.CUST_ID[详细]
-
Oracle PL / SQL中的自定义顺序
所属栏目:[百科] 日期:2021-05-23 热度:177
我有一个oracle查询,我希望结果是自定义的“高级主管”,“董事”,“经理”,“雇员”,来自GRADE_DESCRIPTON领域.我正在使用以下查询. 但是我没有得到理想的结果 结果的顺序是“高级主管”,董事,“员工” SELECT DISTINCT GRADE_DESCRIPTION,HIRING_FORECATS[详细]
-
CHECK CONSTRAINT字符串只包含数字. (Oracle SQL)
所属栏目:[百科] 日期:2021-05-23 热度:156
我有一个列,说PROD_NUM包含一个’数字’,用零填充零.例如001004569.他们都是九个字符长. 我不使用数字类型,因为数字的正常操作对这些“数字”没有意义(例如,PROD_NUM * 2没有任何意义).由于它们的长度都相同,因此列被定义为CHAR(9) CREATE TABLE PRODUCT ([详细]
-
oracle – 为什么SQL * Plus在退出时提交?
所属栏目:[百科] 日期:2021-05-23 热度:77
当然这应该是一个终止会话并导致回滚的一样?在我看来,似乎是可能的最不客气的事情.当我发现它是这样做的时候,我真的很震惊 更重要的是 – 如果Oracle在退出时将其更改为回滚,是否有人反对? 有趣的是,随着本周(2009-09-03)的11gR2版本,SQL * Plus现在可以[详细]
-
每个用户默认方案的Oracle设置(不更改会话)
所属栏目:[百科] 日期:2021-05-23 热度:112
有没有办法更改oracle用户的默认模式? 我在FAQ中发现我可以在会话中改变它,但这不是我想要的.例如.登录时的用户始终看到另一个模式为默认模式. 提前致谢. 我认为登录触发器应该工作: CREATE OR REPLACE TRIGGER db_logonAFTER logon ON DATABASE WHEN (U[详细]
-
Oracle插入if not exists语句
所属栏目:[百科] 日期:2021-05-22 热度:108
insert into OPT (email,campaign_id) values('mom@cox.net',100)where not exists( select * from OPT where (email ="mom@cox.net" and campaign_id =100)) ; Error report: SQL Error: ORA-00933: SQL command not properly ended 00933. 00000 – “SQ[详细]
-
oracle – 用于Pl / SQL开发的IDE [已关闭]
所属栏目:[百科] 日期:2021-05-22 热度:197
有没有任何免费的IDE用于Pl / SQL开发 我每天使用 SQL Developer开发包.虽然不完美,但它有一些有用的功能: 语法高亮; 自动完成; 调试(尽管不是现场请求,尽可能的告诉); 简单连接配置(基于JDBC和TNSNAMES); … 它也是免费的,不像之前提到的(肯定更好)Toad.[详细]
-
Oracle 9 – 重置序列以匹配表的状态
所属栏目:[百科] 日期:2021-05-22 热度:69
我有一个序列用于将我的(基于整数)的主键在oracle表中. 看来,这个序列并不总是被用来在表中插入新的值.如何使序列与表中的实际值相符? 如果ID是您的PK列的名称,PK_SEQ是您的序列的名称: 查找最高PK的值 SELECT MAX(ID)FROM tableName 查找下一个PK_SEQ的[详细]
-
oracle – Windows找不到“http:/.127.0.0.1:%HTTPPORT%/apex/f
所属栏目:[百科] 日期:2021-05-22 热度:63
我试图安装Oracle Express 11g,在我下载了zip文件OracleXE112_Win64之后,我解压缩它,然后打开Disk 1然后设置.我经历了整个安装过程,没有任何问题.但是当我打开“开始”时,我遇到了以下错误: Windows cannot find 'http:/.127.0.0.1:%HTTPPORT%/apex/f?p=4[详细]
-
在oracle中,如何更改会话以显示UTF8?
所属栏目:[百科] 日期:2021-05-22 热度:155
我不知道Oracle的生活中的加密语法.这是Oracle 10g 我的会话的NLS_LANGUAGE目前是默认为AMERICAN. 我需要能够显示UTF8字符. 以下是我的一些尝试,都不正确: ALTER SESSION SET NLS_LANGUAGE='UTF8'ALTER SESSION SET NLS_LANGUAGE='AMERICAN_AMERICA.UTF8'[详细]
-
Oracle:如何计算空和非空行
所属栏目:[百科] 日期:2021-05-22 热度:177
我有一个表,其中两列可能为null(以及一些其他列).我想计算列a,b,两列和两列都设置为null的行数. 在一个查询中可以使用Oracle吗?或者我必须为每个创建一个查询?不能使用组或其他一些我可能不知道的东西吗? COUNT(expr) 将计算expr不为空的行数,因此您可[详细]
-
在sqlplus / Oracle中将时代转换为日期
所属栏目:[百科] 日期:2021-05-22 热度:59
我有下表: SQL desc recording Name Null? Type -------------------- -------- ------ CAPTUREID NOT NULL NUMBER(9) STARTDATE NOT NULL DATE ENDDATE DATE STATE NUMBER(1) ESTIMATEDENDTIME NUMBER(13) 这是这个表的一行: SQL select * from recordi[详细]
-
如何将字符串日期转换为oracle10g中的日期格式
所属栏目:[百科] 日期:2021-05-22 热度:198
我的日期值存储为varchar2,值为15 / August / 2009,4:30 PM,如何将其转换为适当的日期格式,如DD-MM-YYYY. 您可以使用TO_DATE函数将字符串转换为DATE,然后使用TO_CHAR将日期重新格式化为另一个字符串,即: SELECT TO_CHAR( TO_DATE('15/August/2009,4:30 P[详细]
-
在Oracle 10g中使用左连接删除
所属栏目:[百科] 日期:2021-05-22 热度:157
我有以下代码在MS SQL Server中工作正常: delete grpfrom grpleft join my_dataon grp.id1 = my_data.id1and grp.id2 = my_data.id2and grp.id3 = my_data.id3and grp.id4 = my_data.id4where my_data.id1 is NULL 基本上,我想删除在grp中可以找到的所有[详细]
-
oracle – 如何从给定的日期获取一个月的最后一天?
所属栏目:[百科] 日期:2021-05-22 热度:171
例如,给定的日期是04/04/1924,我想找出1924年2月的最后一天. 我想出了add_month,但是如果我从数据源有不同的月份,似乎并不灵活 任何好的想法? Oracle具有 last_day() 功能: SELECT LAST_DAY(to_date('04/04/1924','MM/DD/YYYY')) from dual;SELECT LAST_[详细]
-
简单的Oracle变量SQL赋值
所属栏目:[百科] 日期:2021-05-22 热度:171
尽管花了一个小时研究我似乎无法弄清楚如何正确定义变量然后在SQL中使用它. 这是我到目前为止所做的: DECLARE startDate DATE:= to_date(’03 / 11/2011′,’dd / mm / yyyy’); 其中我得到了答复: ORA-06550: line 1,column 63: PLS-00103: Encountere[详细]
-
Oracle TIMESTAMP WITH TIMEZONE命名区域与偏移量
所属栏目:[百科] 日期:2021-05-22 热度:143
在oracle中,指定的时区是否始终存储? 我一直在我们的系统中测试这个列,在某些地方,时间戳显示为: 26-FEB-09 11.36.25.390713 AM +13:00 但其他时候是: 26-FEB-09 11.36.25.390713 AM Pacific/Auckland 如果将值存储为前者,是否表示实际时区未存储? 我[详细]
-
脚本禁用Oracle中的所有作业(DBMS_JOB包)?
所属栏目:[百科] 日期:2021-05-22 热度:65
我正在寻找一个禁用所有工作的脚本.现在我在Toad中突出显示它们,单击“脱机”按钮,然后提交更改.必须有一种方法可以在PL / SQL中执行此操作. 如果要阻止所有作业运行,可以更改初始化参数JOB_QUEUE_PROCESSES.如果将其设置为0,Oracle将不会运行使用DBMS_JOB[详细]
-
SELECT语句用于WHERE子句中的Count
所属栏目:[百科] 日期:2021-05-22 热度:162
我正在尝试构造正确的sql语句(Oracle)以获取每个customer_id的device_id的计数大于给定值.例如,我想知道拥有3个以上device_ids的customer_id.单个device_id只能有一个customer_id与之关联,而customer_id可能有许多device_id. Table:device_idcustomer_id..[详细]
-
oracle – 要修改的列不是标识列
所属栏目:[百科] 日期:2021-05-22 热度:113
我创建了一个包含列S_ROLL NUMBER(3)NOT NULL的表现在我想将此列作为标识列. 我用过这个命令 alter table studentsmodify(S_ROLL NUMBER GENERATED BY DEFAULT ON NULL AS IDENTITY); 然后我收到了这个错误. S_ROLL NUMBER GENERATED BY DEFAULT ON NULL A[详细]
-
如果可能,Oracle数据库中的每个字段都应该具有检查约束吗?
所属栏目:[百科] 日期:2021-05-22 热度:144
如果我知道正确的字段格式,我应该为所有这些字段创建检查约束,还是会影响插入/更新的性能?将正则表达式用于复杂规则是一个好主意,还是应该只使用像case和length这样的简单约束? 这些字段已在应用程序级别进行验证. 通常,最好不要信任应用程序并使用检查[详细]
-
Oracle 11g dmp导入. ORA-39000 / ORA-39143错误
所属栏目:[百科] 日期:2021-05-22 热度:132
我在oracle和数据库中真的很新. 对于一个可能是愚蠢的问题感到遗憾. 这是我的问题.我有一个数据库导出(不是我的,所以我不知道它是如何导出的:有差异吗?),我想用以下脚本导入它: @Echo offBreak offRem fullimpdp.cmdset NLS_LANG=american_america.WE8M[详细]
-
在Oracle SQL Developer中使用Ref Cursor
所属栏目:[百科] 日期:2021-05-22 热度:170
我正在使用Oracle SQL Developer,但是在查看返回引用游标的包的结果时遇到问题.以下是包装定义: CREATE OR REPLACE package instance.lswkt_chgoff_recovas type rec_type is record ( source_cd lswk_tpr.gltrans.tpr_source_cd%TYPE,as_of_dt lswk_tpr.[详细]
-
将参数绑定到Oracle Dynamic SQL
所属栏目:[百科] 日期:2021-05-22 热度:174
我有一个接受多个参数的存储过程(即pName,pHeight,pTeam) 我有这样的查询: SQLQuery VARCHAR2(6000);TestCursor T_CURSOR;SQLQuery := 'SELECT ID,Name,Height,Team FROM MyTable WHERE ID IS NOT NULL ';-- Build the query based on the parameters pas[详细]