oracle学习

删除操作要commit
周六、周日不要动数据库
提交代码时间:上午9点到下午三点

D1BND08A ATT_VISION DL_ONOFF 20221205094608 1 20221120 1.0.4.2022.10.06_beta

oracle学习网站:https://www.yiibai.com/oracle/

1)dual 是 Oracle提供的最小的工作表,只有一行一列,具有某些特殊功用,经常当做一个中间表使用
 2)Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
       Union All:对两个结果集进行并集操作,包括重复行,不进行排序;
       https://www.cnblogs.com/yuanchaoyong/p/6213885.html
3)merge命令可以在一个SQL语句中对一个表同时执行inserts和updates操作,使用merge语句,常用于对指定的两个表执行合并操作,语法为“MEGER INTO 合并目标表 USING 合并源表 ON 条件”
      https://m.php.cn/oracle/489601.html
4)PreparedStatement是预编译的,对于批量处理可以大大提高效率. 也叫JDBC存储过程
     https://blog.csdn.net/nnzhuilian/article/details/86241787
5)with as的用法相,当于创建一个临时表。语法为“with temptablename([字段列表]) as (select ...)”
    https://www.php.cn/oracle/489322.html
6)listagg() WITHIN GROUP () 行转列函数的使用。listagg(列名,' 分割符号') within group(order by 列值被拼接的顺序)    如果列名里面有重复的,我们可以用  from(distinct ) 先进行查重
    https://www.cnblogs.com/mxh168/p/13962415.html
7)decode函数的使用。decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 。当“条件”等于“值1”的时候,显示“返回值1”,等于“值2”的时候,显示“返回值2”,依次类推,如果都不满足,则显示“缺省值”即默认值。
     https://blog.csdn.net/super_DuoLa/article/details/115197493
8)NVL函数。NVL(string1,replace_with)。当第一个参数(string1)为空时,返回第二个参数(replace_with),当第一个参数(string1)不为空时,则返回第一个参数(string1)。
     https://blog.csdn.net/qq_18335837/article/details/99676539
9)substr函数,截取字符串函数。语法为“substr(string string,int a,int b)”或“substr(string string,int a)”   a与b分别表示截取的位置、截取字符串的长度(a = 0或者1都是从第一个位置截取,如果b省略表示从a的位置截取到结束)
     substr(STRING,-2)表示从倒数第二个开始,截取到结束
     https://m.php.cn/oracle/489409.html
10)SQL部分执行。选中SQL块,F9就可以运行;断点分析法:每到一处,就select * 一次  
11)case when then 用法。第一种用法,对表中字段可能出现的值,作出对应的处理。第二种用法,对表中字段可能出现的值,做出条件判断,再做出对应的处理
       https://blog.csdn.net/baomingshu/article/details/111557873
12)Oracle数据导出为excel,点击查询出来的结果->导出->格式->选择excel 95-2003(xls)->文件选择到D盘下的non_Documents里面。然后从开发电脑复制到办公电脑小绿人上面发送。
13)oracle 中的(+)是一种特殊的用法。放在右边表示左连接。https://blog.csdn.net/qq_39564789/article/details/121795000
14)trunc函数trunc(sysdate,'HH') 是取当前系统时间,舍去分秒。+1就是加上一天、+1/24 就是加上一小时。   https://blog.csdn.net/haiross/article/details/12837033、https://blog.csdn.net/cuiyan1982/article/details/46545475
15)over partition by  例子:把每个人学生的成绩按照升序排名 (思路:根据学生姓名分组 根据每个人成绩排序)    select *,ROW_NUMBER() over( partition by Name order by Score )排名 from UserGrade           https://www.cnblogs.com/xiaohuizhenyoucai/p/10636747.html
      分组排序后,取某分组最高的(或者前几)   https://blog.csdn.net/weixin_44912883/article/details/107297736
16)oracle选择性插入语句,Oracle INSERT INTO SELECT   https://www.yiibai.com/oracle/oracle-insert-into-select.html
17) 几种连接举例说明:https://blog.csdn.net/weixin_49561506/article/details/127712487
     https://www.freesion.com/article/75961459882/
18)--建索引   CREATE INDEX TB_JC_MIXIN_LOG_IDX3 ON TB_JC_MIXIN_LOG (SAVE_DATE) ONLINE
    3索引:create index tb_index on tb_aa(line_one,line_two,line_three) online
19) exists 与 in 区别联系。n是先执行子查询 把查询结果返回到主查询作为主查询的条件;exists是先执行主查询,然后对每一条数据进行筛选,子查询返回的值相当于“是否”  
https://blog.csdn.net/weixin_42516051/article/details/116437929
20) lpad( string, padded_length, [ pad_string ] );
    string :准备被填充的字符串;
  padded_length:填充之后的字符串长度,也就是该函数返回的字符串长度,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符;
      pad_string:填充字符串,是个可选参数,这个字符串是要粘贴到string的左边,如果这个参数未写,lpad函数将会在string的左边粘贴空格。
https://www.cnblogs.com/space-place/p/5146116.html

21) group by。 from table group by A,B,可以引入临时表先考虑A,B https://blog.csdn.net/qq_41059320/article/details/89281125
22) order by。默认asc从小到大,desc从大到小  
Oracle自定义排序:
order by decode(A, '2', 1, '1', 2, '4', 3, '3', 4, '0', 5);

1java.sql.SQLException: ORA-00001: 违反唯一约束条件 (SSM.SYS_C005444)
    表中的各个字段的一些约束,如非空或唯一

你可能感兴趣的:(oracle,学习,数据库)