declare i number:=1;  --表示当前数字 j number:=0;  --从2开始,存储判断的数字 sum1 number:=0;--总数begin while(i<100) loop i:=i+1; j:=2; while(mod(i,j)!=0)--当取余j=0的时候,即已经找到整除的数字(包括自身) loop j:=j+1;--当取余j不等于0的时候,说明还没有找到整除,+1继续循环 end loop; if(i=j)  --当i=j时,表示没有中途退出循环,即除了1跟…
查询sql语句如下 SELECT * FROM ( SELECT * ,ROW_NUMBER() OVER ( PARTITION BY scene_code ORDER BY (CASE status when 'DRAFT' then 3 when 'PRE' then 5 when 'GRAY' then 7 when 'PROD' then 9 END) DESC ) AS rank_id FROM fus_recom_config WHERE status in ('DRAFT','P…
Oracle的PL/SQL中怎样循环查询的结果集,然后根据查询结果进行判断,是新增或修改操作 loop循环例子 for item in (select a,b,c from table_a where 条件) loop insert into table_b(a,b,c) values (item.a,item.b,item.c); end loop; 如何将查询结果集进行赋值 -- 获取结算单位是否存在(查询结果集赋值)--- select COUNT(*) into conNum from…
ORACLE中用rownum分页并排序的SQL语句 以前分页习惯用这样的SQL语句: select * from (selectt.*,rownum row_num frommytable t order by t.id) b where b.row_num between 1 and 10 结果发现由于该语句会先生成rownum 后执行order by 子句,因而排序结果根本不对,后来在GOOGLE上搜到一篇文章,原来多套一层select 就能很好的解决该问题,特此记录,语句如下: selec…
oracle数据库经典SQL查询 .查看表空间的名称及大小 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size from dba_tablespaces t, dba_data_files d where t.tablespace_name = d.tablespace_name group by t.tablespace_name; .查看表空间物理文件的名称及大小 select tablespace_name, …
oracle中用触发器实现自动记录表数据被修改的历史信息. 有一些比较重要的表字段每次修改需要做历史记录,以后可以查询这个表中某些字段如何被修改过.由什么改成了什么等,由谁操作,操作时间等. 实例:1.首先创建一个成绩表 2.然后创建一个成绩修改日志表 3.针对成绩表写一个触发器,在这里只写笔试成绩和面试成绩的修改触发,各位开发人员可根据自己需要添加修改触发器 --面试成绩,以及笔试成绩修改记录触发器create or replace trigger "TR_EXAM_SCORE_UPDATE&…
oracle多表关联查询和子查询 一.多表关联查询 例子: SQL> create table student1 ( sid ), sname ), sage )); Table created. SQL> create table course1 ( sid ), cname ), cno )); Table created. student1表 SQL> select * from student1; SID SNAME SAGE --- ------ ---------- 李逍遥…
一.思路:首先需要知道素数的概念即质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数. 中心思想是,外循环所有的自然数,内循环折半查询,增加代码的速度,注意:从1开始,需要大于1,但是plsql中的循环是包括两端的值的,所以初始值应该从2开始. 二.具体实现 -- 在控制台输出1到100以内的素数. declare -- 声明一个boolean类型的变量,用作判断输出 v_z boolean; begin -- 循环100以内的数字 .. loop -- 满足条件即为true v_z…
ASP.NET操作ORACLE数据库之模糊查询 一.ASP.NET MVC利用OracleHelper辅助类操作ORACLE数据库 //连接Oracle数据库的连接字符串 string connectionString = @"Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP) (HOST=localhost) (PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=TestDB))); User…
记录通过执行Oracle的执行计划查询SQL脚本中的效率问题   问题现象: STARiBOSS5.8.1R2版本中,河北对帐JOB执行时,无法生成发票对帐文件.   首先,Quartz表达式培植的启动时间为2分钟执行一次JOB,通过日志上看,该JOB已经启动.且在开始统计发票信息后就没有新的日志了,因河北广电数据库很大,猜测是统计发票的SQL 效率低.在比较小的库上执行,系统正常生成发票对帐文件,因此确认猜测为正确的.   然后,将发票统计的SQL截取出来,其中一个SQL如下: select…