Oracle SQL 疑難解析讀書筆記(一 基礎)

2022-09-15 20:27:14 字數 1158 閱讀 6721

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疑難解析》 1 14 排序

oracle sql疑難解析 我們的文字資料混合了大寫 小寫字母和句子 英文句子,指第乙個字母大寫,後續字母小寫 我們希望把這些資料按字母順序 大小寫順序進行排列。我們先在hr.employees表中建立一些混合大小寫的資料。執行下面的update語句,把william smith s的姓 last...

《Oracle SQL疑難解析》 第1章 基礎

oracle sql疑難解析 本章針對sql語句的核心構建模組,羅列了很多的基本操作訣竅,以便讓初學者快速上手,或者讓有經驗的讀者重溫技術關鍵點。本章主要內容包括對oracle資料庫表中資料的查詢 更改 刪除,以及進行此類操作時需要輸入的一些常用的選項。對那些已有很好sql基礎的人員,我們建議選擇性...

《IP路由協議疑難解析》一導讀

ip路由協議疑難解析 隨著internet的極速發展,網路工程師在網路的構建 維護和排障方面所要付出的努力也將成倍增長。由於網路故障的排除工作是一項需要專案經驗積累的實用性技能,因此為了滿足快速增長的internet的運維需求,降低網路技術的學習難度,讓網路工程師盡快掌握各種排障技能,就成為了重中之...