第5章操作符與函式
5.1建立派生列
sleect title_id,
price,
0.10 as 「discount」,
price * (1-0.10) as 「new price」
from titles;
5.2執行算術運算
按收入(***銷售量)來列出傳記
select title_id,
price * sales as 「revenue」
from titles
where type=」biography」
order by price * sales desc;
5.3確定計算的順序
算術操作符的順序高於比較操作符高於邏輯操作符
5.4使用
||連線串
||是2個連續的管道字元
可將多個串連線合併為乙個串,如』a』||』b』||』c』||』d』等於』abcd』
列出作者的姓,名(連線為一列並且按姓,名排序)
select au_fname|| 『 『 || 『au_lname
as 「author name」
from authors
order by au_lname asc,au_fname asc;
5.5使用
substring
提取子串
子串是源串的連續字串行,包含空串或整個源串本身
將出版社id分割為字母和數字部分
select pub_id
substring(pub_id from 1,for 1)
as 「alpha part」
substriing(pub_id from 2)
as 「num part」
from publisher;
5.6使用
upper
和lower
更改串大小
sleect title.name
from titles
where upper title.name() like 『『%mo%』;
5.7使用
trim()
修正大小
trim ([leading|trailing|both]
from string)
刪除『aaa
』的前導,尾隨,前導和尾隨,』<』,」>』是表示刪除空格後串的範圍
select
『<』 || aaa 『||』>』
as 「untrimmed」,
『<』||trim(leading from 『aaa』)||』>』
as」leading」,
『<』||trim(trailing from 『aaa』)||』>」
as 「
trailing」
『<』||trim(『aaa』)||』>』
as 「both」
刪除以h開頭的姓中的前導的h
select au_lname,
trim (leading 』h』 from au_lname)
as 「trimmed name」
from authors;
5.8使用
character_length()
得到串長度
列出作者名的長度
select au_fname,
character_length(au_fname) as 「len」
from authors;
5.9使用
position()
查詢子串
列出e在名中,
ma在姓中的位置
select
au_fname,
position(『e』 in au_fname) as 「pos e」,
au_lname,
positions(『ma』 in au_lname) as 「pos ma」,
from authors;
5.10執行日期及時間愛你間隔運算
列出2001,
2002
上半年出版的書,並列出出版日期排序
select
title_id,
pudate
from titles
where extract (year from pudate)
between 2001 and 2002
and extract(month from pudate)
between 1 and 6
order by pudate desc;
5.11獲取當前日期和時間
列印當前日期、時間、時間戳
select
current_date as 「date」,
current_time as 「time」,
current_temp as 「timestamp」
5.12獲得使用者資訊
select current_user as 「user」
5.13使用
cast()
轉換資料型別
將書價從decimal轉換為
integer
和char(8),<>
表示類的範圍
select
price
as 「price(decimal)」,
cast (price(interger),
as 「price(interger)」,
『<』||cast(price as char(8)) || 『>』
as 「price((char)(8))」
from tiles;
5.14s使用
case
計算條件值
將歷史書價*1.1,將心理學書架
*1.2
,其他不變
select
title_id,
type,
price,
case type
when 『history』
then price*1.10
when 『psychology』
then priuce*1.20
else price
endas 「new price」
from tites;
order by type asc,title_id asc;
5.15使用
coalesce()
檢查空值
coalesce (expr1,expr2,expr3)等價於
case
when expr1 is not null then expr1
when expr2 is not null then expr2
else expr3
end列出位置,若州為空,顯示n/a
select
pub_id,
city,
coalesce(state,』n/a』,) as 「state」,
country
from publishers;
5.16使用
nullif
表示式
nullif (expr1,expr2)等價於
case
when expr1=expr2 then null
else expr1
end如果沒有合同,contact為0
select
title_id,
cotract,
nullif(contract,0) as 「null contract」
from titles;
SQL基礎教程
sql是用於訪問和處理資料庫的標準的計算機語言。什麼是sql?sql指結構化查詢語言 sql是我們有能力訪問資料庫 sql是一種更ansi的標準計算機語言 sql能做什麼?sql面向資料庫執行查詢 sql可從資料庫取回資料 sql可在資料庫中插入新的記錄 sql可以更新資料庫中的資料 sql可以從資...
SQL基礎教程
1.sql 指的是?structured query language 2.哪個 sql 語句用於從資料庫中提取資料?select 3.哪條 sql 語句用於更新資料庫中的資料?update 4.哪條 sql 語句用於刪除資料庫中的資料?delete 5.哪條 sql 語句用於在資料庫中插入新的資料...
Oracle基礎教程筆記(三)
color blue 表空間管理 color 1.create tablespace tabs datafile c oracle product 10.1.0 oradata test tabs.dbf size 10m alter user test default tablespace tab...