《SQL基礎教程》筆記(三)

2021-07-30 06:01:22 字數 3789 閱讀 6193

第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...