日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

sql常用函数

發(fā)布時(shí)間:2025/7/25 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sql常用函数 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
--分組函數(shù) select avg(emp.salary), max(emp.salary), count(emp.salary), count(emp.employeeid), count(*)from employee empwhere emp.deptid = '10'--分組數(shù)據(jù) 部門(mén)的工資和 select emp.deptid, sum(emp.salary)from employee emp -- WHERE emp.employeeid='1001'group by emp.deptid--部門(mén)工資和大于6000 select emp.deptid, sum(emp.salary)from employee empgroup by emp.deptidhaving sum(salary) > 6000;-sql 1999新連接標(biāo)準(zhǔn) select emp.employeeid, emp.deptid, dept.deptid, dept.deptnamefrom employee empjoin deptment dept on emp.deptid = dept.deptidjoin qualification qual on emp.qualid = qual.qualid; --左連接 select * from 表a left outer jion 表b on 表a的列=表b的列;表a在前 select *from deptment deptleft outer join employee emp on dept.deptid = emp.deptid; --右連接 select * from 表a left outer jion 表b on 表a的列=表b的列;表b在前 select *from employee empright outer join deptment dept on dept.deptid = emp.deptid;--全連接 select * from 表a full outer jion 表b on 表a的列=表b的列;和右連接 效果一樣 select *from employee empfull outer join deptment dept on dept.deptid = emp.deptid;

  

--內(nèi)置函數(shù) dual啞表 --字符型函數(shù) --concat連接字符串,substr 截取從a到b位置的字符串,instr select concat(1,'ab'),substr('123456',-3,2),instr('abcbc','bc')from dual; select instr ('abcdedfgd','d',5) from dual;--字符串查找,最后數(shù)字可以指定查找的起始位置 select replace('abddcdc','dd','ll') from dual;--字符串替換 --trim ltrim rtrim用法 select trim(' a b c '),length(trim(' a b c ')) from dual;--去除前后空格 select ltrim(' abc '),length(ltrim(' abc '))from dual;--去除前面空格 select ltrim('1022012032233','102') from dual;--從前面去除包含1,0,2的字符,遇到不是則終止 select rtrim(' abc '),length(rtrim(' abc '))from dual;--去除后面空格 select rtrim('22331099011109','109')from dual;--從后面去除包含1,0,2的字符,遇到不是則終止 --日期型函數(shù) --表示 year 的:y 表示年的最后一位 、 -- yy 表示年的最后2位 、 yyy 表示年的最后3位 、 yyyy 用4位數(shù)表示年 --表示month的: mm 用2位數(shù)字表示月 、mon 用簡(jiǎn)寫(xiě)形式, 比如11月或者nov 、 month 用全稱, 比如11月或者november --表示day的:dd 表示當(dāng)月第幾天 、ddd 表示當(dāng)年第幾天 、 dy 當(dāng)周第幾天,簡(jiǎn)寫(xiě), 比如星期五或者friday 當(dāng)周第幾天。 --表示hour的:hh 2位數(shù)表示小時(shí) 12進(jìn)制、 hh24 2位數(shù)表示小時(shí) 24小時(shí) --表示minute的:mi 2位數(shù)表示分鐘 --表示second的:ss 2位數(shù)表示秒 60進(jìn)制--表示季度的:q 一位數(shù) 表示季度 (1-4)--另外還有ww 用來(lái)表示當(dāng)年第幾周 w用來(lái)表示當(dāng)月第幾周。select to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss') from dual; select sysdate from dual;--系統(tǒng)時(shí)間select add_months(to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss'),2) from dual;--月份加 select add_months(sysdate,-2) from dual;--月份減 select add_months(SYSDATE,2) from dual;--月份加select months_between(sysdate,'2-8月-16') dd from dual;select sysdate-hiredate from scott.emp;--相差天數(shù)select (sysdate-hiredate)/7 from scott.emp;--周數(shù)Select to_char(sysdate,'yyyy') from dual;--當(dāng)前年Select to_char(sysdate,'MM') from dual;--當(dāng)前月Select to_char(sysdate,'dd') from dual;--當(dāng)前日Select to_char(sysdate,'yyyy-mm') from dual;--當(dāng)前年月Select to_char(sysdate,'yyyy-MM-dd') from dual;--當(dāng)前年月日Select Extract(year from sysdate) from dual;--當(dāng)前年select extract (month from sysdate) from dual;--當(dāng)前月select extract (day from sysdate) from dual--當(dāng)前日select last_day(sysdate) from dual;--當(dāng)前日期所在月的最后一天 --NEXT_DAY(d, day_of_week) --返回由"day_of_week"命名的,在變量"d"指定的日期之后的第一個(gè)工作日的日期。 --參數(shù)"day_of_week"必須為該星期中的某一天。 SELECT next_day(to_date('2018-09-18','YYYY-MM-DD'),1) FROM dual; SELECT next_day(to_date('2018-09-18','YYYY-MM-DD'),2) FROM dual; SELECT SYSDATE,next_day(SYSDATE,1) FROM dual; --current_date()返回當(dāng)前會(huì)話時(shí)區(qū)中的當(dāng)前日期 select sessiontimezone,current_date from dual; --round(日期,a)a為year moth day ..四舍五入 SELECT ROUND(to_date('20170619','yyyymmdd'),'year') FROM dual;--2017-1-1SELECT ROUND(to_date('20170719','yyyymmdd'),'year') FROM dual;--2018-1-1SELECT ROUND(to_date('20170215','yyyymmdd'),'month') FROM dual;--2017-2-1SELECT ROUND(to_date('20170212','yyyymmdd'),'month') FROM dual;--2017-2-1SELECT ROUND(to_date('20170216','yyyymmdd'),'month') FROM dual;--2017-3-1(日>15,月份進(jìn)一)SELECT ROUND(to_date('2017-02-16 12:00:01','yyyy-mm-dd hh24:mi:ss'),'month') FROM dual;SELECT ROUND(to_date('20180813','yyyymmdd'),'day') FROM dual;--2018-08-12(周日)SELECT ROUND(to_date('20180815','yyyymmdd'),'day') FROM dual;--2018-08-12(周日)SELECT ROUND(to_date('20180817','yyyymmdd'),'day') FROM dual;--2018-08-19(周日)(日個(gè)位數(shù)>5,日期進(jìn)到這周星期日)SELECT ROUND(to_date('20180822','yyyymmdd'),'day') FROM dual;--2018-08-19(周日)(日個(gè)位數(shù)<=5,日期退到上周星期日)SELECT to_char(ROUND(to_date('20180822','yyyymmdd'),'day'))FROM dual;SELECT TRUNC(to_date('20170216','yyyymmdd'),'month') FROM dual;--2017-2-1--日期加減 日期-interval--當(dāng)前時(shí)間減去7分鐘的時(shí)間 select sysdate,sysdate - interval '7' MINUTE from dual; --當(dāng)前時(shí)間減去7小時(shí)的時(shí)間 select SYSDATE,Sysdate- interval '7' hour from dual; --當(dāng)前時(shí)間減去7天的時(shí)間 select sysdate,SYSDATE - interval '7' day from dual; --當(dāng)前時(shí)間減去7月的時(shí)間 select sysdate,sysdate - interval '7' month from dual; --當(dāng)前時(shí)間減去7年的時(shí)間 select sysdate,sysdate - interval '7' year from dual; --時(shí)間間隔乘以一個(gè)數(shù)字 select sysdate,sysdate - 8*interval '7' hour from dual;--數(shù)字型函數(shù) select abs (-100) from dual;--絕對(duì)值SELECT POWER(5,3) FROM dual;--power(a,n)a的n次方SELECT POWER(-5,3) FROM dual;SELECT POWER(4,-2) FROM dual;select mod (10,3) from dual;--求模select ceil (12.6) from dual;--取上限整數(shù)select floor (12.6) from dual;--取下限整數(shù)select round (12.5) from dual;--四舍五入select round (12.46327,1) from dual;--四舍五入,逗號(hào)后數(shù)字表示精度select round (16.46327,-1) from dual;--四舍五入,逗號(hào)后數(shù)字表示精度select trunc (12.455,1) from dual;--截取,逗號(hào)后數(shù)字表示精度

  

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/ysg520/p/9669416.html

總結(jié)

以上是生活随笔為你收集整理的sql常用函数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。