Oracle学习整理
		     
  Oracle数据库,基础知识点整合。希望看到的大神修正补充,感激不尽。   
四大基本句式:   
  1.添加语句基本句式   
    Insert  into 表名(字段名) values(对应字段的数据)   
  2.删除基本句式   
    delete from 表名 where 限制条件   
      限制条件不写会删除整张表的数据   
  3.修改基本句式   
    update 表名 set 字段名 = 对应数据 where 限制条件   
      限制条件不写会修改所有指定字段内的数据   
  4.查询基本句式   
    select 字段 from 表名 where 限制条件    
      限制条件不写查询所有指定字段内的数据   
      (字段处写入*代表全查询)       
查询时需要注意:   
  1.四大基本操作可以直接进行运算,字段处运算或限制条件处运算   
  2.数据库中空值与非空值进行运算,结果为空   
  3.起别名:   
    (1)空格 + 别名   
    (2)空格 + “别名” 与第一种的区别是可以区分别名的大小写   
    (3)as + 别名   
  4.限制条件中对空值进行判断:is null. 对非空值进行判断, is not null.   
  5.模糊查询:   
    %:select 字段 from 表名 where 字段 like ‘%x%’   
    _:select 字段 from 表名 where 字段 like ‘_x_’   
      区别是百分号0-无限位,下划线只能占一位   
  6.对重复数据去重,distinct关键字,声明在查询字段前,如果查询多个字段需要所有字段重复才会去重   
  7.限制条件处判断符号正常书写:>,<,=,>=,<=   
  8.多个判断条件如果需要同时满足用and连接,如果满足其中之一用or连接   
  9.in,any,all 关键字:   
    in():括号中写入参数,指满足任意参数即可,相当于or;   
    any():括号内写入参数,指满足任意参数即可,前面接判断符号   
    all():括号内写入参数,指满足所有参数,相当于and;   
  10.数据拼接||,双竖线左右为拼接的值   
  11.查询字段进行排序:order by 字段 : 升序asc,降序 desc   
  12.合并结果集:   
    (1)union:合并结果集,对所有结果去重并且排序   
    (2)union all:合并结果集,对结果不去重全部显示,不排序       
单行函数:   
  单行函数:对一行数据进行操作返回一条数据的函数   
           字符型:   
           1.拼接函数:concat(参数,参数)   
           2.截位函数:substr(目标数据,起点索引,保留位数)   
           3.返回字符索引函数:instr(目标数据,指定字符)   
           4.替换函数:replace(目标数据,替换的新数据)   
           5.去掉左右两端指定字符:trim(目标字符 from 目标数据)   
           数字型:   
           1.四舍五入函数:round(目标数据,保留到小数点后几位)   
           2.截断函数:trunc(目标数据,保留到小数点后几位)   
           3.取余函数:mod(被除数,除数)   
          取一个多位数的个位,除数为10   
          取一个多为数的十位数,除10取余10   
           日期型:   
           1.to_date(‘20010101’,’yyyymmdd’):字符串转换日期类型   
           2.to_char(20010101,’yyyymmdd’):日期类型转换为字符串   
           功能型   
           1.decode(1,a,b,c,d,e):用于判断,如果a等于1则返回b,如果c等于1则返回d,否则返回e   
           2.case  a  when 1 then 执行代码   
                                when 2 then 执行代码   
                                else 否则时执行代码   
                                end   
    
多表查询:   
  根据连接方式   
    (1)内连接:   
      select 字段 from 表1, 表2  where 表1.字段 = 表2.字段   
      select 字段 from 表1 inner join 表2 on表1.字段 = 表2.字段   
    (2)外连接:   
      左外连:select 字段 from表1, 表2  where 表1.字段 = 表2.字段(+)   
          select 字段 from表1 left join 表2 on 表1.字段 = 表2.字段   
          表1为主表,内容全部显示   
      右外连:select 字段 from表1, 表2  where 表1.字段(+)= 表2.字段   
          select 字段 from表1 right join 表2 on 表1.字段 = 表2.字段   
          表2为主表,内容全部显示   
      满外连:select 字段 from 表1 full join 表2 on 表1.字段 = 表2.字段   
          会将两张表全部内柔都显示出来   
      特殊的多表查询 内连接:将一张表通过起别名的方式分成两部分,进行多表查询   
    
聚合函数:   
    1.count(字段):计数函数,统计表中该字段有多少条数据   
    2.sum(字段):求和函数,求该字段所有数据的和    
    3.max(字段):求最大值函数   
    4.min(字段):求最小值函数   
    5.avg(字段):求平均数函数   
    6.伪列:rowid,存在于每一张表中,存放的是每条数据所对应的物理地址,   
      所以rowid是唯一不重复的并且非空的,为保证count数据准确性,一般使用伪列    
    7.伪字段:rownum默认只能从1开始从生成                                
    注意:sum函数求和,不会计算空值,由于avg函数求平均值需要对数据求和之后进行除法运算,   
      所以avg函数一般与nvl去空函数嵌套使用,将空值赋值为0       
                  
 
    
        
            
                
                    
                        
                     
                    
                        
                            扫码关注我们
                         
                        
                            微信号:SRE实战
                         
                        
                            拒绝背锅 运筹帷幄
                         
                     
                 
             
         
     
 				
		
		
		
			
    
                    更多精彩
		
													
													
													
													
	
		
