久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Oracle如何在SQL語(yǔ)句中對(duì)時(shí)間操作、運(yùn)算

瀏覽:66日期:2023-03-12 15:25:15
目錄
  • 0、date與timestamp
  • 1、獲取系統(tǒng)當(dāng)前時(shí)間
  • 2、ORACLE里獲取一個(gè)時(shí)間的年、季、月、周、日的函數(shù):
  • 3、日期操作
  • 4、常用的時(shí)間戳
  • 5、查詢某時(shí)間范圍
  • 總結(jié)

0、date與timestamp

1)區(qū)別

date精確到年月日時(shí)分秒,timestamp更精確一些;

但這個(gè)不重要,重要的是,實(shí)踐中我從Oracle數(shù)據(jù)庫(kù)取date類型字段,前端展示時(shí)分秒都是0,網(wǎng)上說(shuō)數(shù)據(jù)庫(kù)類型是date取到前端就是這樣,只能精確到日,后面都是默認(rèn)填0;
我給字段換成timestamp確實(shí)問(wèn)題解決了,我理解不了!

2)轉(zhuǎn)換

timeStamp --> date

TO_DATE(to_char(xxxTimestamp, "yyyy-mm-dd hh24:mi:ss"), "yyyy-mm-dd hh24:mi:ss")

date -->timeStamp

TO_TIMESTAMP(to_char(xxxDate, "yyyy-mm-dd hh24:mi:ss"), "yyyy-mm-dd hh24:mi:ss")

1、獲取系統(tǒng)當(dāng)前時(shí)間

date類型的:

sysdate

timestamp類型的:

SYSTIMESTAMP

char類型的:

to_char(sysdate, ‘yyyy-mm-dd hh24:mi:ss’)

2、ORACLE里獲取一個(gè)時(shí)間的年、季、月、周、日的函數(shù):

select to_char(sysdate, ‘yyyy" ) from dual; --年
select to_char(sysdate, ‘MM" ) from dual; --月
select to_char(sysdate, ‘dd" ) from dual; --日
select to_char(sysdate, ‘Q") from dual; --季
select to_char(sysdate, ‘iw") from dual; --周–按日歷上的那種,每年有52或者53周

3、日期操作

當(dāng)前時(shí)間減去7分鐘的時(shí)間

select sysdate - interval ‘7" MINUTE from dual;

當(dāng)前時(shí)間減去7小時(shí)的時(shí)間

select sysdate - interval ‘7" hour from dual;

當(dāng)前時(shí)間減去7天的時(shí)間

select sysdate - interval ‘7" day from dual;

當(dāng)前時(shí)間減去7月的時(shí)間

select sysdate - interval ‘7" month from dual;

當(dāng)前時(shí)間減去7年的時(shí)間

select sysdate - interval ‘7" year from dual;

時(shí)間間隔乘以一個(gè)數(shù)字

select sysdate - 8*interval ‘7" hour from dual;

4、常用的時(shí)間戳

//獲取當(dāng)年的一月一號(hào)
to_date(concat((select to_char(sysdate,‘yyyy") from dual), ‘-01-01 00:00:00"),‘yyyy-MM-dd HH24:mi:ss") //date格式
//獲取這個(gè)月的一月一號(hào)
SELECT LAST_DAY(ADD_MONTHS(SYSDATE, -1)) + 1 FROM DUAL; //date格式

char格式

SELECT TO_CHAR(LAST_DAY(ADD_MONTHS(SYSDATE, -1)) + 1,‘yyyy-mm-dd HH24:mi:ss") FROM DUAL;

5、查詢某時(shí)間范圍

SELECT users.* 
FROM   users
WHERE  create_time >= "2021-12-01 00:00:00" 
AND  create_time <= "2021-12-06 00:00:00"

或者

SELECT users.* 
FROM   users
WHERE  create_time 
BETWEEN "2021-12-01" AND "2021-12-07";

總結(jié)

到此這篇關(guān)于Oracle如何在SQL語(yǔ)句中對(duì)時(shí)間操作、運(yùn)算的文章就介紹到這了,更多相關(guān)Oracle對(duì)時(shí)間操作運(yùn)算內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: Oracle
主站蜘蛛池模板: 阿拉善盟| 临沂市| 博湖县| 定襄县| 蓬安县| 武安市| 桦甸市| 视频| 原平市| 乌什县| 金寨县| 莎车县| 余江县| 临城县| 晴隆县| 九台市| 神木县| 安庆市| 林周县| 锡林浩特市| 甘南县| 万源市| 宁蒗| 彭泽县| 中江县| 宾川县| 延川县| 行唐县| 安吉县| 潮安县| 镇安县| 伊川县| 炎陵县| 濮阳县| 咸丰县| 长泰县| 南阳市| 任丘市| 绥棱县| 公安县| 镇赉县|