随笔分类 - ORACLE技术
1
摘要:test表结构和数据为:id starttime1 2010/11/121 2010/12/122 2011/3/2sql语句:select id,substr(aa,0,10) starttime1,substr(aa,21,10) starttime2,substr(aa,31,10) starttime3from (select t.id,WMSYS.WM_CONCAT(t.starttime) aa from test tgroup by t.id)显示结果:id starttime1 starttime2 starttime31 2010/11/12 2010/12/12 null2
阅读全文
摘要:declare Insert_MobileAPP number;--Insert_MobileAPP为JOB的名字beginsys.dbms_job.submit(:Insert_MobileAPP,'MobileAPPs;',sysdate,'trunc(sysdate+1)+1/24');--MobileAPPs是存储过程的名字,--sysdate为第一次执行时间--'trunc(sysdate+1)+1/24'每天的执行时间 commit;end;删除JOBselect * from all_jobs; 看一下要删除的job号 exec d
阅读全文
摘要:网站的用户登录网站的月统计次数,每天登录多次算一次--VIEW DWUSER.LOGIN_MYONSTAR_MONTH: 供应商逻辑 select count(*) from (--直接COUNT出来月访问量 select trunc(OCCUR_DATE),user_id,count(user_id) from T_SODW_ACTIVITY_LOG --每一个人每天的一条记录 where usertype = 'subscriber' AND result = 'Success' AND occur_date>=to_date('2011-08
阅读全文
摘要:--取本月的数据,但是今天数据除外 SELECT * FROM coustomertable WHERE TO_CHAR (sb_date, 'mm') = TO_CHAR (SYSDATE, 'mm') AND sb_date <> TRUNC (SYSDATE) ORDER BY sb_date DESC;--去每月的汇总数据,除去本月的数据 SELECT SUM (SENT_QUANTITY) SENT_QUANTITY, TO_CHAR (SB_DATE, 'yyyy-mm') FROM coustomertable WHER
阅读全文
摘要:1 With子句1.1 学习目标掌握with子句用法,并且了解with子句能够提高查询效率的原因。1.2 With子句要点1. with子句的返回结果存到用户的临时表空间中,只做一次查询,反复使用,提高效率。2. 如果定义了with子句,而在查询中不使用,那么会报ora-32035 错误:未引用在with子句中定义的查询名。3. 前面的with子句定义的查询在后面的with子句中可以使用。但是一个with子句内部不能嵌套with子句。4. 当一个查询块名字和一个表名或其他的对象相同时,解析器从内向外搜索,优先使用子查询块名字。5. w...
阅读全文
摘要:24小时的形式显示出来要用HH24select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;to_date() function1.日期格式参数 含义说明 D 一周中的星期几 DAY 天的名字,使用空格填充到9个字符 DD 月中的第几天 DDD 年中的第几天 DY 天的简写名 IW ISO标准的年中的第几周 IYYY ISO标准的四位年份 YYYY
阅读全文
摘要:SQL的优化应该从5个方面进行调整:1.去掉不必要的大型表的全表扫描2.缓存小型表的全表扫描3.检验优化索引的使用4.检验优化的连接技术5.尽可能减少执行计划的CostSQL语句:是对数据库(数据)进行操作的惟一途径;消耗了70%~90%的数据库资源;独立于程序设计逻辑,相对于对程序源代码的优化,对SQL语句的优化在时间成本和风险上的代价都很低;可以有不同的写法;易学,难精通。SQL优化:固定的SQL书写习惯,相同的查询尽量保持相同,存储过程的效率较高。应该编写与其格式一致的语句,包括字母的大小写、标点符号、换行的位置等都要一致ORACLE优化器:在任何可能的时候都会对表达式进行评估,并且把特
阅读全文
摘要:CREATE OR REPLACE FORCE VIEW CAMPAIGN_VIN_SERVICE_SUM(VIN_ID,HFC,VEH_MODEL_DESC,FIRST_CALL_TIME,BBWC_COMP_DATE,RED_BOTTON,AUTO_CRASH_RESP,AUTO_AIRBAG_DEPLOY_RESPONSE,EMERGENCY_SERVICE,REMOTE_DOOR_UNLOCK,REMOTE_HORN_LIGHTS,ROAD_ASSISTANCE,STOLEN_VEH_LOC,ON_DEM_DIAG_STATUS,T_B_T,ONS_DES_DOWNLOAD,P_O_I
阅读全文
摘要:select cs.VIN_ID VIN_ID,HFC,vm.VEH_MODEL_DESC VEH_MODEL_DESC,cs.FIRST_CALL_TIME FIRST_CALL_TIME,cs.BBWC_COMP_DATE BBWC_COMP_DATE,cs.RED_BOTTON RED_BOTTON,cs.AUTO_CRASH_RESP AUTO_CRASH_RESP,cs.AUTO_AIRBAG_DEPLOY_RESPONSE AUTO_AIRBAG_DEPLOY_RESPONSE,cs.EMERGENCY_SERVICE EMERGENCY_SERVICE,cs.REMOTE_DOO
阅读全文
摘要:create database link onss(链接名)connect to STAGINGUSER(用户名) identified by STAGINGUSER(密码)using 'PROSTAGE'(tns 配置名);select * from STAGINGUSER.cti_grofags_hour@onss;DROP DATABASE LINK onss(链接名); //删除dblink
阅读全文
摘要://先给 BMC_CPU_INFOS 加上GNUM 字段来对每一个十分钟进行区分ALTER TABLEBMC_CPU_INFOS ADDGNUM number(10);//MM是‘08:05’这样的时间字符串//SUBSTR(MM, 1, 1)取小时的十位数,SUBSTR(MM, 2, 1)取小时的个位数,SUBSTR(MM, 4, 1)取分钟的十位数update BMC_CPU_INFOS set GNUM = TO_NUMBER(SUBSTR(MM, 1, 1))*60+TO_NUMBER(SUBSTR(MM, 2, 1))*6+TO_NUMBER(SUBSTR(MM, 4, 1)) ..
阅读全文
摘要:CREATE OR REPLACE procedure DWUSER.update_DW_Amount as begin execute immediate 'truncate table DW_AMOUNT'; insert into DW_AMOUNTselect login_date, login_amount, login_fail_amount, register_amount, login_fail_amount/login_amount as LOGIN_FAIL_RATE FROM (select login_date, count(user_id) login
阅读全文
摘要:select tb7.MM,cpu7,cpu6,cpu5,cpu4,cpu3,cpu2,cpu1 from(select substr(mi,-5) mm,cpu7 from(select to_char(SAMPLE_TIMESTAMP_UTC,'yyyy/mm/dd hh24:mi') mi,avg(PARAMETER_VALUE) cpu7 from SANDBOXUSER.BMC_CPU where to_char(SAMPLE_TIMESTAMP_UTC,'yyyy/mm/dd hh24:mi') BETWEEN TO_CHAR ( trunc(SYS
阅读全文
摘要:select * from(select to_char(SAMPLE_TIMESTAMP_UTC,'yyyy/mm/dd hh24:mi') mi,avg(PARAMETER_VALUE) cpu7 from SANDBOXUSER.BMC_CPU where to_char(SAMPLE_TIMESTAMP_UTC,'yyyy/mm/dd hh24:mi') BETWEEN TO_CHAR ( trunc(SYSDATE - 18), 'yyyy/mm/dd hh24:mi' )AND TO_CHAR ( trunc(SYSDATE - 17
阅读全文
摘要://昨天0点到今天0点select * from tablename where create_time>= trunc(SYSDATE-1) and create_time <trunc(SYSDATE )//昨天8点到今天8点select * from tablename where create_time> trunc(SYSDATE-1)+ 8/24 and create_time < trunc(SYSDATE) + 8/24
阅读全文
摘要:create table temp_cup asselect to_char(SAMPLE_TIMESTAMP_UTC,'yyyy/mm/dd hh24:mi') a,avg(PARAMETER_VALUE) val from SANDBOXUSER.BMC_CPU where to_char(SAMPLE_TIMESTAMP_UTC,'yyyy/mm/dd hh24:mi') BETWEEN TO_CHAR ( SYSDATE - 10, 'yyyy/mm/dd hh24:mi' )AND TO_CHAR ( SYSDATE - 9, '
阅读全文
摘要://显示系统最近30天的记录 where "SB_DATE" BETWEEN TO_DATE ( TO_CHAR ( SYSDATE - 30, 'mm-dd-yyyy' ) || '00:00:01', 'mm-dd-yyyy hh24:mi:ss' ) AND TO_DATE ( TO_CHAR ( SYSDATE - 1, 'mm-dd-yyyy' ) ...
阅读全文
摘要:隔了好多天才写第三篇,主要是对游标的探讨游标:作用:遍历一个查询结果,是对查询结果的一种标记,可以对结果进行操作或者选择行输出,简单地说:游标就是你对一个已经查询的结果做一次for循环,从第一条读到最后一条,行话叫遍历。oracle游标是pl/sql的重要组成部分,在pl/sql中,当查询结果超过一行时的,就需要用到游标,游标是sql的一个内存工作区,由系统或用户已变量形式定义,作用是用于临时存储从数据库中提取的数据块。在某些时候,需要把数据从存放在磁盘的表中调用到计算机内存中进行处理,否则频繁的磁盘数据交换会降低效率。游标有两种类型:显式游标或隐式游标,比如select ...into...
阅读全文
摘要:今天读一段pl/sql,从学习基本语法。语句:insert into ODD_S12--插入ODD_S12这表,用select结果集作为参数插入select to_char(v.CREATED_TIMESTAMP,'yyyy/mm/dd') da--对该字段进行to_char的格式控制,并取别名da, v.curr_system_id--v表的curr_system_id字段,CNI.CITY_NAME,count (vr.S)/ count(vr.REQUEST_ID) success_rate--对该字段去别名success_ratefrom vcr.vid v --数据源
阅读全文
摘要:读完我的这个恶补,你可以对pl/sql的特性有了基本的认识。话不多说,开始。在pl/sql中,可以使用sql语句来操作oracle操作,并且使用流程控制语句来处理数据。我们还可以声明常量和变量,定义函数和过程并捕获运行时的错误。pl/sql是一种把sql对数据操作的优势和过程化语言数据处理优势结合起来的语言。例子1:declare qty number(5);--定义变量qtybegin --语句块的开始 select quantity into qty from invertyory --从invertyory表中选择quantity字段 并且赋值给qty变量 where product .
阅读全文
1
浙公网安备 33010602011771号