SQL基本函式

2021-07-30 20:31:22 字數 4371 閱讀 2042

數值函式

select ceil(44.775) from dual;–45

select ceil(44.112) from dual;–45

select floor(44.775) from dual;–44

select floor(44.112) from dual;–44

select abs(-10) from dual;–10

select abs(10) from dual;–10

select sqrt(4) from dual;–2

select power(2,3) from dual;–8

select power(3,2) from dual;–9

select sin(0),cos(0) from dual;–??

select sign(-200) from dual;–????-1??1

select mod(10,4) from dual;–10%4

select round(23.4366,2) from dual;–23.44

select round(23.4366,3) from dual;–23.437

select round(55.341,-2) from dual;-100

字元函式

select upper(『ab』) from dual;–ab

select lower(『attt』) from dual;–attt

select lower(『ads』) from dual;–ads

select initcap(『rervdfds』) from dual;–rervdfds

–substr(char,position,substr_length)

select substr(『abcdefgh』, 0,1) from dual;–a

select substr(『abcdefgh』, 4) from dual;–defgh

select substr(『abcdefgh』, -5,2) from dual;–de

select substr(『abcdefgh』, -1) from dual;–h

select length(『12121 『) from dual;–7 ????

select length(『??』) from dual;–2

select concat(『sun 『, 『is beautiful』) from dual;– is beautiful

select 『sun』||』 is beautiful』 from dual;–sun is beautiful

select trim(『a』 from 『asasasasa』) from dual;–

select ltrim(『2323』, 『1』) from dual;–2323

select ltrim(『2323』, 『2』) from dual;–323

select ltrim(『22323』,』2』) from dual;-323

select rtrim(『232333』,』3』) from dual;–232

select trim(』 eweqwe 『) from dual;–eweqwe

select ltrim(』 eweqwe 『) from dual;–eweqwe

select rtrim(』 eweqwe 『) from dual;– eweqwe

select replace(『abdsda』,』a』,』a』) from dual;–abdsda

select replace(『abdsda』,』a』) from dual;–bdsd

select replace(『abcabcabcddf』,』abc』,』null』) from dual;–nullnullnullddf

日期函式

–系統時間

select sysdate from dual;–格式』day-month-year』;

–對日期操作的函式

–返回在指定日期上新增的月份add_months(date,i)

–如果i是小數,取整數部分,如果是負數,從後面開始減

select add_months(sysdate, 2) from dual;–month5 to month7

select add_months(sysdate, -1) from dual;–month5 to month3

–next_day返回制定日期的下週?是哪一天

select next_day(sysdate,』monday』) from dual;–24-apr-17

select next_day(sysdate,』tuesday』) from dual;–25-apr-17

–last_day(date)返回date所在日期的最後一天

select last_day(sysdate) from dual;–30-apr-17

–months_between(date1, date2),date1-date2之間相差的月份,返回值可正可負

select months_between(『1-apr-2017』, 『30-apr-2017』) from dual;—0.935483

–extract(date from datetime)

select extract(day from sysdate) from dual;–19

select extract(month from sysdate) from dual;–4

select extract (year from sysdate) from dual;–2017

–利用時間戳

select extract(hour from timestamp』2017-4-19 22:47:45』) from dual; –22

select extract(minute from timestamp』2017-4-19 22:47:45』) from dual; –47

select extract(second from timestamp』2017-4-19 22:47:45』) from dual; –45

轉換函式

–日期型別轉換成字元型

–to_char(date,[,fmt[,params]])

–date是將要轉換的日期

–fmt轉換的格式:預設是dd-mm-rr

–yy yyyy year

–mm month

–dd day

–hh24 hh12

–mi ss

–param日期的語言

select to_char (sysdate, 『yyyy-mm-dd hh24:mi:ss』) from dual;–2017-04-19 23:59:58

select to_char (sysdate, 『yy-mm-dd hh24:mi:ss』) from dual;–17-04-19 23:59:19

select to_char (sysdate, 『year-mm-dd hh24:mi:ss』) from dual;–twenty seventeen-04-20 00:00:12

–字元型轉換為日期型

–to_date(char,[,fmt[,params]])

–params用於指定日期的語言

select to_date(『217-04-20』,』yyyy-mm-dd』) from dual;–20-apr-17,依然是按照預設格式輸出

–數字轉換成字元

–to_char(number[,fmt])

–9:顯示數字忽略前面的0,0顯示數字,位數不足,用0補齊

–.或d顯示小數點,或g顯示千位符顯示

美元符號

s加正負

號前後都

可以se

lect

toch

ar(12345.678,′

99,999.999') from dual;-- 12,

345.678se

lect

toch

ar(00011222.3213,′

s99999.9999′)

from

dual

–+11222.3213–字

符轉換成

數字–t

onum

ber(

char

[,fm

t])s

elec

tton

umbe

r(『 1,000','$9999』) from dual;–1000

sql基本函式大全

sqlserver基本函式 1.字串函式長度與分析用 datalength char expr 返回字串包含字元數,但不包含後面的空格 substring expression,start,length 不多說了,取子串 right char expr,int expr 返回字串右邊int expr...

利用hibernate實現基本sql函式功能

最近接觸的專案,訪問資料庫還是用的hibernate,好久沒有使用hibernate了,有些基本用法已經忘記。現在記錄一下hibernate實現基本sql函式的語句,方便以後查詢。建立criteria,拼接查詢條件 實現sql函式 例如 1 除去重複項 distinct criteria.setpr...

SQL注入基本知識及常用函式

查庫select schema name from information schema.schemata 查表 select table name from information schema.tables where table schema 資料庫名 查列 select column nam...