随笔分类 - Oracle实践经验
摘要:Not IN问题 Exists,not Exists,in,not in 例如: 等同于
阅读全文
摘要:对于有的更新语句,要更新的表可能条件不够,需要用到left join关联其他表, 但是不能直接关联,否则报错:错误如下: 正确实例:
阅读全文
摘要:我这里有一个情况,如果字段A的值为A1,则字段B必须为B1,如果否则,字段B可以随意为值。 处理这个问题,最开始用case when解决,后来发现其实这样是错误的。 因为当上面条件不为501的时候,结果是 ga.movingflag =ga.movingflag ,其实这样会导致这个字段笛卡尔乘。
阅读全文
摘要:异常信息: 首先查看一下表空间是否自动扩展: 如果不是自动扩展,改成自动扩展: 如果是自动扩展,看看表空间使用情况:一般一个普通表空间的一个数据文件最大为32G。如果使用接近这个了,就需要再建一个数据文件。 再建一个数据文件的方法:
阅读全文
摘要:1,跳出游标的循环,不执行遍历了。 方法一:goto 首先在循环外面定义一个:<<方法名>>。这里的方法名可以随便起,作用就是给跳出循环后的位置定位。 然后使用:goto 方法名。在满足一定条件后就会跳出循环,到方法名那里。 方法二:EXIT 2,跳出本次循环,开始下次循环:continue 3,结
阅读全文
摘要:http://blog.csdn.net/chenmeng2192089/article/details/9155625 一、运算符算术运算符:+ - * / 可以在select 语句中使用连接运算符:|| select deptno|| dname from dept; 比较运算符:> >= =
阅读全文
摘要:1,取整函数(ceil 向上取整,floor 向下取整) 第一种方式: 第二种方式 2, 取幂(power) 和 求平方根(sqrt) 3,求余 4,返回固定小数位数 (round:四舍五入,trunc:直接截断) 5,返回值的符号(正数返回为1,负数为-1) 1.round函数(四舍五入) 描述
阅读全文
摘要:Oracle:Lpad函数 SQLServer:right函数 Right(string, length) Right 函数的语法具有下面的命名参数: 示例: 一、Lpad函数 lpad函数将左边的字符串填充一些特定的字符其语法格式如下:lpad(string,n,[pad_string]) str
阅读全文
摘要:数据库SQL优化——使用EXIST代替IN 1,查询进行优化,应尽量避免全表扫描 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引 . 尝试下面的技巧以避免优化器错选了表扫描: · 使用ANALYZE TABLEtbl_name为扫描的表更新关键
阅读全文
摘要:如下: select *from all_source where OWNER = 'LC0019999'and TEXT like '%insert into%d values(%'
阅读全文
摘要:1,获取存储过程最后select返回的结果集。SELECT 数据集返回值。 因为select返回的结果是一个表。所以返回的结果需要用一个表接收。使用临时表接收。 被调用的存储过程最后是这样:返回了一个空标题的字段。 什么都不处理,调用存储过程,发现是这样: 执行结果: 会发现返回了三个数据集,不仅原
阅读全文
摘要:一个扩展存储过程调用另一个存储过程,示例: 被调用存储过程:最后会返回一个游标,游标返回一个值。调用这个存储过程的存储过程同样需要获取它。 在这个处理中,返回的结果是一个数字的游标。只有一行数据。 因此我接收的时候,用一个int变量接收他。 同时调用存储过程时候,需要定义一个游标变量用来传进去,返回
阅读全文
摘要:Oracle怎么导出存储过程 http://www.myexception.cn/database/1564245.html 导出: 1, 2,点击输出文件,选择要导出文件,选择要导出的目录以及设置导出文件名,后点击导出。 导入 1, 2,选择SQL插入,勾选使用命令窗口,选择要导入文件,点击导入。
阅读全文
摘要:错误的方式: 正确1: 正确2,去掉括号:
阅读全文
摘要:比如 对于这种情况,因为表里存的是'',其实是没有内容的,要查询这个字段,不能直接使用
阅读全文
摘要:例子1: 例子2: rebatepolicy表是主表,rebatepolicyitems是从表,从表有主表的主键,现在对于主表一些条件的数据的对应子表要求删除。 如下方式:
阅读全文
摘要:需要指出的是,C#中有datetime类型,但是这个类型是包括小时,分钟,秒的。这个格式与数据库中的Date类型不符,如果将now设为datetime类型插入数据会失败。 需要通过TO_DATE('字段','YYYY-MM-DD'))转换。如下: 错误写法: 不需要逗号引起来,这是画蛇添足。
阅读全文
摘要:因为sum的使用需要group by的,所以,对于sum出来的东西想要排序,使用rownum的话,不能直接放在SQL里面的。 可以这样。
阅读全文
摘要:例如,这个表的结构: 如图 对于最后两列,如果是字符类型,会存在倒数第二列,是数字类型,会存在最后一列,现在要把他们放在一行,行转列。通过这种方式: 原理是:行转列。但是对于倒数第二列的某几个值,应为是字符型,所以,不能用sum。但是如果直接放到字段里就会因为group by的原因。而分成几行。 如
阅读全文