
sql
文章平均质量分 70
wangduqiang722
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SQL标准
为了在各个数据库厂商之间取得更大的统一性,美国国家标准学会(American NationalStandards Institute,ANSI)于1986年发布了第一个SQL标准, 并于1989年发布了第二个版本,该版本已经被广泛地采用。ANSI在1992年更新了SQL标准的版本,即SQL92和SQL2,并于1999年再次更新为SQL99和SQL3标准。 在每一次更新中,ANSI都在SQL中添加原创 2014-12-23 19:15:19 · 423 阅读 · 0 评论 -
一个不算简单的sql
场景 : 做个抄表的报表. 原以为很简单.取得父节点下的各节点的合计就行了 //得到某组织层次下的子节点 select * from C_ZZCC t where t.fjd = '00000001' //得到所属单位为某个组织层次的用户 select * from J_YHDA t where t.ssdw = '04000001' //得到某用户的量费信息 select原创 2014-12-23 19:16:01 · 293 阅读 · 0 评论 -
sql 子查询中的exists 和 in
exists貌似不是标准sql exists()是用来判断括号里面的值或者结果集是否为null的, 返回的是bool类型的,比如select * from a where exists(select 1 from b where id=a.id), 同(select id from b where id = a.id) 如果select 1 from b where id=a.id这一句能查原创 2014-12-23 19:15:30 · 301 阅读 · 0 评论 -
sql 修改字段
对已有的表,新增修改删除字段 alter table p_gg_nr modify nr varchar2(2000);改一个列的数据类型 alter table s_fyjmzb add sfcdjm varchar2(2) 加一列 ALTER TABLE mytable DROP a 删一列 create index IDX_P_GGFJ on P_GG_F原创 2014-12-23 19:20:14 · 384 阅读 · 0 评论 -
sql sum 空或0
sum 有时会返回空,有时返回0 什么区别呢 . sum 空或0" TITLE="sql sum 空或0" /> 这样一个表. select sum(a) from TEST t where t.b 得到是0 select sum(a) from TEST t where t.b 得到是空 通过where 找不到符合条件的记录. sum的结果就是空.原创 2014-12-23 19:20:08 · 357 阅读 · 0 评论 -
avg
avg函数. 统计a列的平均值时候.忽略a值为null的记录 insert into test(a,b) values (5,1) insert into test(a,b) values (5,null) insert into test(a,b) values (5,0) insert into test(a,b) values (5,3) select avg(t.b) from test原创 2014-12-23 19:18:56 · 435 阅读 · 0 评论 -
待查
查出一个水电标示为水电且节点类型为班组的层次下的水的层次个数,电的层次个数,水电的层次的个数 最后的结果是这样的: select c1.mc, (select count(*) from c_zzcc c2 where c2.qxm like c1.qxm||'%') zong , (select count(*) from c_zzcc c3 where c3.qx原创 2014-12-23 19:17:51 · 327 阅读 · 0 评论 -
oracle 使用explain plan分析查询…
使用explain plan分析查询语句" TITLE="oracle 使用explain plan分析查询语句" /> 如图或者左边建一个explain plan窗口.或直接点右边 窗口如图 使用explain plan分析查询语句" TITLE="oracle 使用explain plan分析查询语句" /> 可以标题定制 选择显示哪些列 使用explain plan分析查询语句原创 2014-12-23 19:17:06 · 353 阅读 · 0 评论 -
oracle 查看执行计划
方便sql调优原文地址:查看执行计划">oracle 查看执行计划作者:go_with_wind常用方法有以下几种: 一、通过PL/SQL Dev工具 1、直接File->New->Explain Plan Window,在窗口中执行sql可以查看计划结果。其中,Cost表示cpu的消耗,单位为n%,Cardinality表示执行的行数,等价Rows。 2、先执行 EXPLA转载 2014-12-23 19:17:03 · 357 阅读 · 0 评论 -
sql 调优 工具 准备
看到报表里庞大的sql觉得sql高深复杂. 其实不然,大的sql是小的sql组合的结果.想写出庞大的sql只要理解业务就行了.sql就那么几个关键字.有什么难的. ok我们开始sql调优 查询树的概念不多.plsql里 的explain plan 好像很有用 先利其器 用EXPLAIN PLAN 分析SQL语句 博客分类: oracle SQLOracleAccess.netC#原创 2014-12-23 19:17:01 · 537 阅读 · 0 评论 -
sql not in 一个与直觉相反的问题
select * from dual where '1' = 2 select * from dual where '1' = 1 用来判断一个表达式是不是true select * from dual where 'wd06000174' not in (select zc.wlccid from c_zzcc zc) 不如这样 (select 1 from c_zzcc zc wher原创 2014-12-23 19:16:58 · 311 阅读 · 0 评论 -
sql 剩下的一些
in line view(内联视图) //不解释 他等价于视图 SELECT a.last_name, a.salary, a.department_id, b.salavg FROM employees a, (SELECT department_id, AVG(salary) salavg FROM employees GROUP BY department_id) b WHERE a.原创 2014-12-23 19:15:38 · 284 阅读 · 0 评论 -
sql 中间呢
我要写些剩下的. 最后写sql调优 下面这个应该跟什么调优有关 调优的前提是基础 11. 用EXISTS替代IN、用NOT EXISTS替代NOT IN 在许多基于基础表的查询中,为了满足一个条件,往往需要对另一个表进行联接.在这种情况下, 使用EXISTS(或NOT EXISTS)通常将提高查询的效率. 在子查询中,NOT IN子句将执行一个内部的排序和合并. 无论在哪种情况下,NOT I原创 2014-12-23 19:15:32 · 264 阅读 · 0 评论 -
sql 子查询 相关…
select id,fpbl from j_pbxx p where id_fpb = (select id_fpb from j_pbxx where id='0400000000002N') and sffp='是' 子查询 通常 在where 子句中 comparison [ANY | ALL | SOME] (sqlstatement) expression [NOT] IN (sqlst原创 2014-12-23 19:15:27 · 310 阅读 · 0 评论 -
sql 表连接, union
先说简单的,union就是把两个结果集合并到一起,union有去重的功能. union all跟union功能一样只是没有去重功能,所以效率较高(没有排序去重的过程,确定不会有重复的话用unionall好些) union就是把结果集简单的合在一起(union要检查重复).并到同一列里 如果俩的列都起了别名只要第一个的. select da.id 一 from j_yhda da where d原创 2014-12-23 19:15:24 · 423 阅读 · 0 评论 -
sql 一些语法 聚合函数,…
判断内容是不是空: where t.wlccid is not null //xx不是空 where t.wlccid is null //xx是空 (不是 = '') 聚合函数,group by ,having 理解第一, 一起学的时候理解了,但时间长不用就忘了,但既然理解了.随便一看就懂了 group by : 是配合聚合函数使用的. select里的如果只有原创 2014-12-23 19:15:21 · 271 阅读 · 0 评论 -
2014年10月27日
select * from s_qf q where q.yf not in (select l.yf from s_lf_history l where l.yhid = q.yhid ) 与 select * from s_qf q where q.yhid not in (select l.yhid from s_lf_history l where l.yf = q.yf ) 的区别原创 2014-12-23 19:18:09 · 304 阅读 · 0 评论