摘要:http://database.51cto.com/art/201010/231126.htmoracle wm_concat(column)函数使我们经常会使用到的,下面就教您如何使用oracle wm_concat(column)函数实现字段合并,如果您对oracle wm_concat(column)函数使用方面感兴趣的话,不妨一看。shopping:-----------------------------------------u_id goods num------------------------------------------1 苹果 22 梨子 51 西瓜 43 葡萄
阅读全文
随笔分类 - SQL
摘要:这是员工表,这里有员工id,员工名称,领导id,比较特殊是这里领导也是人,因此没有领导名字字段。我本来的sql是:selectlast_name,(selectlastfromemployeeswhereemployee_id=manager_id)asmanager_namefromemployee;查询没错,可是manager_name是空,我的思路是:通过select employee_id,manager_id from employees,查询,可以得到这里的manager_id,然后我再select name=manger_id,不就行了被告知:修改这个sql:select na.
阅读全文
摘要:http://blog.sina.com.cn/s/blog_9d39be1b01011fhc.html1.切换窗口ctrl+tab 向前切换 [ctrl+shift+tab向回切换]2.记住密码设置方法:菜单Tools --> Preferences -->Oracle --> Logon History --> StoreWith Password3.SQL语句字符全部大写设置方法:菜单Tools --> Preferences -->Editor --> Keyword Case -->Uppercase4.自动替换快捷输入SQL语句,例如
阅读全文
摘要:有 字段A 和B比如数据如下A B1 21 31 4 2 22 3统计出的sql结果:A count1 32 2select a,count(b) from t group by a;--或count(b) over (partition by a) 如统计一级会计科目数量的sql:select fo,count(dispname)from(select substr(subjcode,1,4) fo,bd_accsubj.dispname,bd_accsubj.pk_accsubj, bd_accsubj.pk_glorgbook from bd_accsubjwhere pk_glorgb
阅读全文
摘要:问题提出:oracle爱好者qq群里的snowgselect CORP_TYPE_NAME,CRRP_NAME,GROWTH_CODE,GROWTH_NAME,GROWTH_DATE,STATION_NAMEfrom SERVICE.WEB_CNAN_ABAMwhere growth_date>'20100101' and growth_date<'20120101' and STATION_NAME='垫江'ORDER BY 2,3这是要求分组的表,其中STATION_NAME站点会有很多(上千),后面的CORP_TYPE_CODE
阅读全文
摘要:条件max date取值于当天审核后的日期,这样周六的上收也可以取到更新:fts_voucher_b.pk_account != '1162N51000000000032B'(select fts_voucher_b.interestdate, bd_accid.accidcode, bd_accid.accidname, fts_voucher_b.creditamount as 上收金额, (case when (round(0.35 * fts_voucher_b.localcreditamount / 10000, 0) ...
阅读全文
摘要:如下图with a as (select t.outflag,t.pk_corp, t.subjcode from bd_accsubj t where t.pk_accsubj in ('0001E11000000000050W','0001N510000000000OZW') ) SELECT distinct * FROM (SELECT you.subjcode,nvl(you.outflag, me.outflag) outflag, nvl(you.pk_corp, me.pk_corp )pk_corp FROM a you ...
阅读全文
摘要:select * from (( select invname from bd_invbasdoc where rownum <=5) cross join (select custname from bd_cubasdoc where rownum <=12)) order by invname,custnameCross join(必须外面嵌套一个selct) 在sql中cross join的使用: 1、返回的记录数为两个表的记录数乘积。 2、将A表的所有行分别与B表的所有行进行连接。 例如: tableA r1 r2 A B C D ...
阅读全文
摘要:一) 用Oracle Exists替换DISTINCT: 当提交一个包含一对多表信息(比如部门表和雇员表)的查询时,避免在SELECT子句中使用DISTINCT。一般能够考虑用Oracle EXIST替换,Oracle Exists使查询更为迅速,因为RDBMS核心模块将在子查询的条件一旦满足后,立即返回结果。例子: SELECT DISTINCT DEPT_NO,DEPT_NAME FROM DEPT D,EMP E WHERE D.DEPT_NO = E.DEPT_NO;SELECT DEPT_NO,DEPT_NAME FROM DEPT D WHERE Exists(SELECT ‘X&
阅读全文
摘要:转自百度http://hi.baidu.com/wangzhiqing999/blog/item/8db9453dafb73bfc3b87ce51.htmlps1:特别喜欢这种blog的写法。有案例,有分析过程,有语句,有结果。ps2:有时间尝试一下oracle下面的这个sql写法,应该没有这样的复杂。SQL查询案例:寻找连续日期中残缺的数据2010-10-10 21:08测试表与测试数据CREATE TABLE TestDataCheck (idvarchar(5),--设备IDdates datetime--日期)INSERT INTO TestDataCheck VALUES ('
阅读全文
摘要:要想深入了解这些字符串的美妙应用,可以参考http://www.cnblogs.com/sumsen/archive/2012/05/26/2519376.html直接看图
阅读全文
摘要:select * from ((select gl_detail.explanation, bd_accsubj.dispname, gl_detail.debitamount 借方, gl_detail.creditamount 贷方, gl_detail.yearv, gl_detail.periodv , gl_voucher.no 凭证号, wmsys.wm_concat(gl_freevalue.valuecode) valuecode, wmsys.wm_concat(gl...
阅读全文
摘要:涉及到的表目前有fa_card,fa_cardhistory,前者是固定资产卡片主表,后者是附表。我需要更改的卡片资产编码范围在:然后sql想写成select * from fa_card where pk_corp='1003' and (card_code between '000000503' and '000000811')order by card_code for update查询结果为空。因为想在上plsql从excel复制更改名称,我因为做了固定资产的使用部门更改,我惊喜的发现ts会变成现在的时间,于是select * from
阅读全文
摘要:ORACLE中的支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与INSTR的功能相似3,REGEXP_SUBSTR :与SUBSTR的功能相似4,REGEXP_REPLACE :与REPLACE的功能相似它们在用法上与Oracle SQL 函数LIKE、INSTR、SUBSTR 和REPLACE 用法相同,但是它们使用POSIX 正则表达式代替了老的百分号(%)和通配符(_)字符。POSIX 正则表达式由标准的元字符(metacharacters)所构成:'^' 匹配输入字符串的开始位置,在方括号表达式中使
阅读全文
摘要:http://zonghl8006.blog.163.com/blog/static/4528311520083995931317/ over(Partition by...) 一个超级牛皮的ORACLE特有函数。天天都用ORACLE,用了快2年了。最近才接触到这个功能强大而灵活的函数。真实惭愧啊!oracle的分析函数over 及开窗函数一:分析函数overOracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是对于每个组返回多行,而聚合函数对于每个组只返回一行。下面通过几个例子来说明其应用。1:统计某商店的营业额。 date sale 1 20
阅读全文
摘要:http://zhidao.baidu.com/question/296112002.html?an=0&si=1打个比喻吧 比如A表的数据是 A{ 1,4,5,9} B{2,3,4,5}那我执行此语句 select * from A union select * from B 那结果是{1,2,3,4,5,9}如果执行select * from A union all select * from B 结果是{1,2,3,4,4,5,5,9}你看下结果就知道他们的区别了这样应该比较容易明白 看不懂再问我
阅读全文
摘要:今天才发现了wmsys.wm_concat这个有趣有用的函数,它的作用是以','链接字符。例子如下:SQL> create table idtable (id number,name varchar2(30));Table createdSQL> insert into idtable values(10,'ab');1 row insertedSQL> insert into idtable values(10,'bc');1 row insertedSQL> insert into idtable values(10,
阅读全文
摘要:1.nul函数将一个null值转换为一个实际的值。数据类型可以是日期,数字,字符。数据类型必须匹配: nvl(commision,0) nvl(hiredate,'01-JAN-87') nvl(job_id,'no manager') nvl(to_char(job_id),'no manager')nvl能够转换任何数据类型,但是转换的数据类型返回值必须是nvl(expr1,expr2)第一个参数expr的类型。如:date,number, varchar2 or char例子:计算员工的年薪,奖金为空的用0代替。SQL> select
阅读全文
摘要:区别:1.CHAR的长度是固定的,而VARCHAR2的长度是可以变化的, 比如,存储字符串“abc",对于CHAR (20),表示你存储的字符将占20个字节(包括17个空字符),而同样的VARCHAR2 (20)则只占用3个字节的长度,20只是最大值,当你存储的字符小于20时,按实际长度存储。ps:一个汉字两个字节,比如定义“电工材料类供应商名录”,需要char(20)2.CHAR的效率比VARCHAR2的效率稍高。3.目前VARCHAR是VARCHAR2的同义词。工业标准的VARCHAR类型可以存储空字符串,但是oracle不这样做,尽管它保留以后这样做的权利。Oracle自己开发
阅读全文
摘要:select arap_djfb.paydate as 付款日期, bd_corp.unitname as 付款单位, bd_cubasdoc.custcode as 收款单位编码, bd_cubasdoc.custname as 收款单位名称, bd_accbank.bankacc as 收款银行账号, arap_djfb.bbye as 付款金额, arap_djfb.fkyhmc as 付款银行, arap_djfb.zy as 付款摘要 from ...
阅读全文

浙公网安备 33010602011771号