其它常用單行函式
select * from dual where a like '%\%%' escape '\'
order by…… asc 公升序
order by……desc 倒序
lower('sql course') sql course 大寫轉換為小寫
upper('sql course') sql course 小寫轉換為大寫
initcap('sql course') sql course 單詞首字母轉換為大寫
concat('hello','world') helloworld 字元拼接
substr('helloworld;,1,5) hello 字元截斷
length(『helloworld』)10 計算字串長度
instr('helloworld',6) w 取字串中的固定位字元
lpad('24000',10,'*') *****24000 從左開始填充字串至固定長度
rpad('24000',10,'*') 24000***** 從右開始填充字串至固定長度
trim('h' from 'helloworld') elloworld 去除字串指定字元
trim('hello world ') hello world 去除字串前後的空格
round(45.926,2) 45.93 四捨五入函式
trunc(45.926,2) 45.92 向下捨入
mod(1600,300) 100 取餘數
在oracle中常見的日期格式有:
yyyy-mm-dd
mm-dd-yyyy
dd-mmm-yy
months_between('01-sep-95','11-jan-94') 19.6774194 比較兩個月份之間的間隔月份
add_months('11-jan-94',6) 11-jul-94 在給定日期之後加上月份
next_day('01-sep-95','friday') 8-sep-95 計算給定日期之後的下乙個周五的時間
next_day('01-sep-95',1) 3-sep-95 計算給定日期之後的下一周(以週日為一周的初始)的第一天
next_day('1995-09-01',1) ora-01861:literal does not match format string
next_day(to_date('1995-09-01','yyyy-mm-dd'),1)) 3-sep-95
last_day('01-feb-95') 28-feb-95 計算給定日期該月的最後一天
round('25-jul-95','month') 1-aug-95
round('25-jul-95' ,'year') 1-jan-96
trunc('25-jul-95' ,'month') 1-jul-95
trunc('25-jul-95','year') 1-jan-95
在表示式中oracle常會自動進行轉換(隱式轉換):
從char/varchar到number,從char/varchar到date(三位英文本母格式的)
to_char(date,'format_model')
日期格式化元素
意義yyyy
4位數字表示的年份
year
英文表示的年份
mm2位數字表示的月份
month
英文表示的月份
mon3個字母描述的英文月份簡稱
dd2位數字表示的日期
day英文描述的星期幾
dy3個字母描述的星期幾簡稱
hh24:mi:ss am
時分秒格式化
ddspth
英文描述的月中第幾天
to_char(number,'format_model');
數字格式化元素意義9
表示乙個數字
0強制顯示0
$放乙個美元佔位符
l放乙個美元佔位符
.顯示乙個小數點佔位符
,顯示乙個千分位佔位符
to_number(char[,'format_model']);
select to_number('4456') from dual; 正確
select to_number('$4,456') from dual; 錯誤
select to_number('$4,456','$9,999' )from dual; 正確
select to_number('$4,456,455.000','$9,999.999' )from dual; 錯誤,後面的轉換長度必須比前面的指定字元長
select to_number('$4,456,455.000','$9,999,999,999,999.999' )from dual; 正確
nvl (expr1, expr2) 如果expr1為空,則返回expr2
nvl2 (expr1, expr2, expr3) 如果expr1為空,則返回expr3(第2個結果)否則返回expr2
nullif (expr1, expr2) 如果expr1和expr2相等,則返回空
coalesce (expr1, expr2, ..., exprn) 如果expr1不為空,則返回expr1,結束;否則計算expr2,直到找到乙個不為null的值 或者如果全部為null,也只能返回null了
case expr when comparison_expr1 then return_expr1
[when comparison_expr2 then return_expr2
when comparison_expr3 then return_expr3
else else_expr]
end
decode (expr,comparison_expr1,return_expr1,
[comparison_expr2,return_expr2,comparison_expr3,returan_expr3],else_expr)
SQL基礎知識
本篇文章是講解sql的基礎知識,但也講得不全面,我只記錄了自己不懂的或者不熟悉的東西。一 在sql中簡單的查詢 1.重複的記錄 distinct 可以通過在選擇列表前的select語句中插入關鍵字distinct來消除重複的查詢結果記錄。比如 select distinct city from ci...
SQL基礎知識
sql作用 1.面向資料庫執行查詢 2.可從資料庫取回資料 3.可在資料庫中插入新的記錄 4.可更新資料庫中的資料 5.可從資料庫刪除記錄 6.可建立新資料庫 7.可在資料庫中建立新錶 8.可在資料庫中建立儲存過程 9.可在資料庫中建立檢視 10.可以設定表 儲存過程和檢視的許可權。資料庫操作語句 ...
SQL基礎知識
資料庫就是資料的倉庫,dbms資料庫管理系統同來對大資料的管理 檢索,就是對資料庫的管理。乙個dbms可以管理多個資料庫,這些不同的資料庫叫catalog或database,dbms允許把不同的database儲存在不同磁碟,每個資料庫中的表名不能相同。table 表,把不同型別的資料放到不同的區域...