数据库oracle
编程牛逼编程人
从事java开发
展开
-
ORACLE分页查询SQL语法——最高效的分页
转自:http://blog.sina.com.cn/s/blog_8604ca230100vro9.html 仅作为平常积累经验;–1:无ORDER BY排序的写法。(效率最高) –(经过测试,此方法成本最低,只嵌套一层,速度最快!即使查询的数据量再大,也几乎不受影响,速度依然!)SELECT * FROM (SELECT ROWNUM AS rowno, t.* FR转载 2015-09-01 09:07:33 · 629 阅读 · 0 评论 -
oracle中minus的使用
工作中遇到一个问题,oracle中两张表结构完全相同的表,a,b。要从a中向b刷数据,有时候,并不一定全部刷过去,b中的数据可能要比a中的数据少,然后,根据sj这个字段,再手工按照差的天数sj进行依次导入。每月这么多天,如果能查出来,b比a少的这些数据的sj字段,工作量就会减少。 其实,就是两个表关联了,网上查了查,minus正好符合需求。 用如下类似语句select * from a wher转载 2016-03-29 10:13:45 · 846 阅读 · 0 评论 -
使用oracle遇到的相关函数
1. sign() 比较大小,decode select decode(sign(变量1-变量2),-1,变量1,变量2) from dual; --取较小值 sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1 例如: 变量1=10,变量2=20 则sign(变量1-变量2)返回-1,decode解码结果为“变量1”,达到了取较原创 2015-09-17 18:16:04 · 424 阅读 · 0 评论 -
oracle
select m.mbname from b0101_mainbody m where regexp_like(m.mbname,’[A-Za-z]’)原创 2015-11-19 12:34:31 · 340 阅读 · 0 评论 -
oracle中的replace函数应用
在写存储过程时候遇到的,当一个临时变量为temp=’b,c,d,e,f,g’ 逗号分隔的为表中某个字段的值 比如想要查找这个字段in这个值 in(‘||temp||’),[||是连接字符串的意思 类似于java中的+]如果不做更改,数据库就会识别为 in(‘b,c,d,e,f,g’)但是 因为此字段为字符串 正确写法 应为 in(”b’,’c’,’d’,’e’,’f”)所以为了实现 可以用原创 2015-11-14 18:17:34 · 776 阅读 · 0 评论 -
CASE WHEN函数
CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END –Case搜索函数 CASEWHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 例子:SELECT grade, COUNT (CASE WHEN sex = 1 THEN 1原创 2015-09-25 10:05:12 · 1236 阅读 · 0 评论 -
user_tab_columns和user_col_comments区别
oracle查询用户下的所有表select * from all_tab_comments – 查询所有用户的表,视图等 select * from user_tab_comments – 查询本用户的表,视图等 select * from all_col_comments –查询所有用户的表的列名和注释. select * from user_col_comments – 查询本用户的表原创 2015-08-24 15:36:02 · 10578 阅读 · 0 评论 -
如何查看oracle的表空间使用情况
oracle 查询表的大小,表空间的使用情况,默认表空间 –查看某张表占用磁盘空间大小 ( 表名大写 )Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name having Segment_Name='表名';查看用户默认表空是那个select username,default_tablesp转载 2015-11-11 11:09:12 · 979 阅读 · 0 评论 -
1.2 日期函数
1.2 日期函数1.2.1 获取系统当前时间 sysdate select sysdate from dual;-->显示的日期格式是系统默认格式 select to_char(sysdate,'YYYY-MON-DD HH24:mi:ss') systime from dual; 用途:用户注册时间的插入 insert into use原创 2015-09-17 18:31:45 · 392 阅读 · 0 评论 -
oracle的over(partition by id1 order by id2)和over(order by id2)
create table TEST( id1 VARCHAR2(6), id2 VARCHAR2(6), num VARCHAR2(6))创建表test,字段有id1,id2,num三个字段,分别来看over(order by id2)和(partition by id1 order by id2)和over(partition by id2)第一:over(partition原创 2015-11-05 08:45:39 · 2865 阅读 · 0 评论 -
oracle处理数字函数大全
F.3 数字函数 函数接受NUMBER类型的参数并返回NUMBER类型的数值.超越函数和三角函数的返回值精确到36位.ACOS、ASIN、ATAN、ATAN2的结果精确到36位. ABS 语法: ABS(x) 功能: 得到x的绝对值. 使用位置: 过程性语言和SQL语句。 ACOS语法: ACOS(x) 功能: 返回x的反余弦值. x应该从0到1转载 2015-11-03 14:48:41 · 516 阅读 · 0 评论 -
SQL里的EXISTS与in、not exists与not in
系统要求进行SQL优化,对效率比较低的SQL进行优化,使其运行效率更高,其中要求对SQL中的部分in/not in修改为exists/not exists 修改方法如下: in的SQL语句SELECT id, category_id, htmlfile, title, convert(varchar(20),begintime,112) as pubtime FROM tab_oa_pub W转载 2015-09-14 18:23:59 · 584 阅读 · 0 评论 -
oracle中的to_char数字转换为字符串格式
to_char(X,Y) X代表表字段 Y代表要将数字位数, 必须写0或者9的组合SELECT trim(to_char(rownum,'09')) FROM dual原创 2015-09-29 16:53:06 · 6311 阅读 · 0 评论 -
三种常见的SQL插入语句,尤其是最后一种
SQL插入语句是最常见的SQL语句之一,下面将为您介绍三种最常见的SQL插入语句,供您参考,如果您对SQL语句方面感兴趣的话,不妨一看。我们在插入数据到数据库中的时候,常用的SQL插入语句如下:第一种:正常情况下`INSERT INTO table1(id, name, address) VALUES(1, ygl, 'beijing')`——适用于T-sql和PL/SQL; 第二种:SELECT转载 2015-09-10 14:59:01 · 2030 阅读 · 0 评论 -
sqlserver中的substring用法,oracle的substr,js中的substring
sql substring select substring(ziduan,1,6) 将会选择字段的前6个字符,比如说是200908 如果设置为0, 同样的执行select substring(ziduan,0,6) 结果会是20090如果换成-1 同样执行select substring(ziduan,-1,6) 结果会是2009oracle substr substr(字符串,截取开始位转载 2016-05-04 09:58:27 · 5555 阅读 · 0 评论