Oracle SQL 疑难解析读书笔记(一 基础)
1.在语句中找到和消除空值
select first_name,last_name from hr.employees where commission_pct is null
is null 和 is not null ,null值不跟任何值相等 ,任何值不和null相等,null不等于null。
2.排序
Oracle 支持区分大小写和不区分大小写两种排序方式。有一个环境变量 NLS_SORT 可以控制排序是否区分大小写。
默认是区分大小写的,即 NLS_SORT = BINARY ,大写的值会排在前面。
如果希望排序不区分大小写则将变量值设置为 BINARY_CI。
alter session set NLS_SORT = 'BINARY_CI'
当然我们也可不改变变量值,使用UPPER和LOWER函数把需要比较和排序的字段都转为大写或小写后进行排序。
当我们进行“=”比较时,我们可以在比较时不区分大小写,只需要将会话中的变量NLS_COMP由BINARY改为 LINGUISTIC。
查看session中这些变量的sql如下:
select * from nls_session_parameters
3.MERGE语句的使用
功能:将新数据插入到表中。
记录是否存在,由主键进行判断,如果主键不存在该表,则插入该行。如果主键信息存在,则通过匹配键的其他详细信息更新该行。
egg: 将NEW_COUNTRIES表中的一些国家信息添加到HR.COUNTIES表中。
merge into hr.countries c
using
( select country_id,country_name
from hr.new_countries) nc
on (c.country_id = nc.country_id)
when matched then
update set c.country_name = nc.country_name
when not matched then
insert (c.country_id,c.country_name)
values(nc.country_id,nc.country_name)
Oracle SQL 疑难解析读书笔记(一 基础)的更多相关文章
- Oracle SQL 疑难解析读书笔记(二、汇总和聚合数据)
2.1 对某字段的值进行汇总 仅仅在两种特殊情况下,Oracle在聚合函数中考虑了NULL值.第一种是在GROUPING功能里,用来检验包含了NULL值的分析函数的结果,是直接由所在的表得来,还是由分 ...
- 《[MySQL技术内幕:SQL编程》读书笔记
<[MySQL技术内幕:SQL编程>读书笔记 2019年3月31日23:12:11 严禁转载!!! <MySQL技术内幕:SQL编程>这本书是我比较喜欢的一位国内作者姜承尧, ...
- 《Troubleshooting SQL Server》读书笔记-CPU使用率过高(下)
<Troubleshooting SQL Server>读书笔记-CPU使用率过高(下) 第三章 High CPU Utilization. CPU使用率过高的常见原因 查询优化器会尽量从 ...
- Oracle SQL 硬解析和子游标
Oracle SQL 硬解析和子游标 What reasons will be happening sql hard parse and generating new child cursors 在一 ...
- Activity源码解析 - 读书笔记
1. Activity启动 Activity是一个比较好的模板方法模式.在Android系统启动时,第一个启动的进程是zygote进程,然后由zygote启动SystemServer,再后就是启动AW ...
- oracle sql 高级编程 历史笔记整理
20130909 周一 oracle sql 开发指南 第7章 高级查询 1.层次化查询select level,ttt.*,sys_connect_by_path(ttt.col1,',') fro ...
- SQL反模式读书笔记思维导图
在写SQL过程以及设计数据表的过程中,我们经常会走一些弯路,会做一些错误的设计.<SQL反模式>这本书针对这些经常容易出错的设计模式进行分析,解释了错误的理由.允许错误的场景,并给出更好的 ...
- The art of multipropcessor programming 读书笔记-硬件基础1
本系列是 The art of multipropcessor programming 的读书笔记,在原版图书的基础上,结合 OpenJDK 11 以上的版本的代码进行理解和实现.并根据个人的查资料以 ...
- The art of multipropcessor programming 读书笔记-硬件基础2
本系列是 The art of multipropcessor programming 的读书笔记,在原版图书的基础上,结合 OpenJDK 11 以上的版本的代码进行理解和实现.并根据个人的查资料以 ...
随机推荐
- tcl之控制流-break/continue
- mysql替代like模糊查询的方法
LIKE语句 SELECT `column` FROM `table` where `condition` like `%keyword%' 事实上,可以使用 locate(position) 和 i ...
- 在Ubuntu下安装gcc编译器+测试
1.输入命令: sudo apt-get install gcc libc6-dev 2.创建文件hello.c使用命令: touch hello.c 3.在hello.c中写入: #include ...
- C# 输出结果有System.Byte[]
byte[]类型直接输出或者调用ToString函数都会出现这个结果. 需要执行: byte[] a=new byte[10]; string text = "";for (int ...
- PTA 7-12(图) 社交网络图中结点的“重要性”计算 最短路
7-12(图) 社交网络图中结点的“重要性”计算 (30 分) 在社交网络中,个人或单位(结点)之间通过某些关系(边)联系起来.他们受到这些关系的影响,这种影响可以理解为网络中相互连接的结点之间蔓延的 ...
- 真是shi
降雨量那题,真踏马shi. 调到还有五个RE不调了. 开始以为map可水后来发现一定要二分查找一下. 这种题没啥营养,不过我发现了我ST表一处错误并打了个板子.就这点用处吧. 这几天做题太少了,每天不 ...
- 《Cracking the Coding Interview》——第13章:C和C++——题目8
2014-04-25 20:27 题目:实现一个能够通过引用计数来实现自动回收数据的智能指针,用C++,不是java. 解法:这题真心牛,我的第一反应是发呆,因为对引用计数的了解仅限于这个名词,完全没 ...
- (原)Unreal渲染相关的缓冲区 及其 自定义代码几种抓取
@authot: 白袍小道 转载说明那啥即可. (图片和本文无关,嘿嘿,坑一下) 以下为Unreal4.18版本中对GPUBuffer部分的分析结果 (插入:比之够着,知至目的) ...
- crmsh语法
.查看配置信息 crm(live)# configure crm(live)configure# show node node1 node node2 property cib-bootstrap-o ...
- centos6系列问题
一.NetworkManager启动问题 1.由于以后要支持e1000版虚拟化网卡,所有centos6镜像均按照NetworkManager服务,并设置开机自启动 2.虚机启动时,默认是Network ...