最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

oracle查詢一天前、幾天前、幾小時(shí)前、一小時(shí)前的數(shù)據(jù)以及恢復(fù)誤刪的數(shù)據(jù)

 更新時(shí)間:2024年03月28日 11:23:17   作者:bpmh  
這幾天工作經(jīng)常需要查詢某天之前的數(shù)據(jù),整理了下相關(guān)的查詢,下面這篇文章主要給大家介紹了關(guān)于oracle查詢一天前、幾天前、幾小時(shí)前、一小時(shí)前的數(shù)據(jù)以及恢復(fù)誤刪的數(shù)據(jù),需要的朋友可以參考下

一.oracle查詢一天前、幾天前、幾小時(shí)前、一小時(shí)前的數(shù)據(jù)

語法:

SELECT * FROM <table_name> AS OF TIMESTAMP (SYSDATE-<interval>);

例:

1.您想查詢用戶表(USER_INFO)一小時(shí)前的數(shù)據(jù)

--一小時(shí)是一天的1/24 ,故<interval>參數(shù)為1/24,如果想查四小時(shí)前的數(shù)據(jù),<interval>參數(shù)可以是4/24或1/6
SELECT * FROM USER_INFO AS OF TIMESTAMP (SYSDATE-1/24);

2.您想查詢用戶表(USER_INFO)一天前的數(shù)據(jù)

SELECT * FROM USER_INFO AS OF TIMESTAMP (SYSDATE-1);

3…您想查詢用戶表(USER_INFO)三天前的數(shù)據(jù)

SELECT * FROM USER_INFO AS OF TIMESTAMP (SYSDATE-3);

二.恢復(fù)誤刪的數(shù)據(jù)

恢復(fù)誤刪的數(shù)據(jù)基于前面能否查詢到歷史數(shù)據(jù),假設(shè)能夠查到一天前的數(shù)據(jù),就可通過下面語句恢復(fù)被刪除的數(shù)據(jù) (如果您覺得步驟不直觀的話請(qǐng)您直接看例子吧)

步驟:

1.創(chuàng)建臨時(shí)表并把誤刪的數(shù)據(jù)暫時(shí)存到臨時(shí)表中

CREATE TABLE TABNAME_TEMP AS SELECT * FROM TABNAME AS OF TIMESTAMP (SYSDATE-<interval>);

2.把臨時(shí)表的數(shù)據(jù)插入原表(被您誤刪數(shù)據(jù)的表)中

 -- SELECT * FROM TABNAME_TEMP 語句 可以帶where條件,看您需要插入所有數(shù)據(jù)還是選擇性插入
 INSERT INTO TABNAME SELECT * FROM TABNAME_TEMP ;

3.刪除臨時(shí)表 (防止臨時(shí)表占用數(shù)據(jù)庫空間)

DROP TABLE TABNAME_TEMP;--注意這里刪除的是臨時(shí)表,您剛剛創(chuàng)建的表,別刪錯(cuò)了。

例:恢復(fù)一天前誤刪除的用戶(用戶 “Tom”,“Jerry”)

CREATE TABLE USER_INFO_TEMP AS SELECT * FROM USER_INFO AS OF TIMESTAMP (SYSDATE-1);
INSERT INTO USER_INFO SELECT * FROM USER_INFO_TEMP where username in ('Tom','Jerry');
DROP TABLE USER_INFO_TEMP;

需要注意的是:誤刪的數(shù)據(jù)不一定能查詢到,也不一定能找回,故在操作數(shù)據(jù)庫時(shí)盡量小心操作。

例:在更新數(shù)據(jù)庫表時(shí)一定帶上where條件;刪除數(shù)據(jù)之前先備份數(shù)據(jù)(尤其是生產(chǎn)環(huán)境或測試環(huán)境您不熟悉的表)

附:Oracle 查詢某個(gè)時(shí)間之內(nèi)的數(shù)據(jù)

//一月之內(nèi)
SELECT * FROM ESS.E_LOG WHERE E_LOG."ETime" BETWEEN sysdate-interval '7' month AND SYSDATE;
 
SELECT * FROM ESS.E_LOG
WHERE to_char(E_LOG."ETime",'yyyy-mm-dd hh24:mi:ss') between to_char(sysdate-225,'yyyy-mm-dd hh24:mi:ss') and to_char(sysdate,'yyyy-mm-dd hh24:mi:ss');
 
//一周之內(nèi)
select * from ESS.E_LOG where E_LOG."ETime" > sysdate - interval '7' day;
 
 
//一年之內(nèi)
select count(*) from ESS.E_LOG WHERE E_LOG."ETime" BETWEEN sysdate-interval '1' year AND SYSDATE;
 
//sysdate獲取的時(shí)間是Oracle數(shù)據(jù)庫系統(tǒng)時(shí)間
select sysdate from dual;

總結(jié)

到此這篇關(guān)于oracle查詢一天前、幾天前、幾小時(shí)前、一小時(shí)前的數(shù)據(jù)以及恢復(fù)誤刪的數(shù)據(jù)的文章就介紹到這了,更多相關(guān)oracle查詢某段時(shí)間之前的數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

泾川县| 舟曲县| 平潭县| 鄂伦春自治旗| 海安县| 察雅县| 三穗县| 大名县| 玛纳斯县| 衡阳县| 黄大仙区| 海安县| 石河子市| 永平县| 涪陵区| 桐梓县| 中方县| 扎赉特旗| 凤山市| 峨眉山市| 璧山县| 石狮市| 礼泉县| 河源市| 建宁县| 民乐县| 浏阳市| 北川| 黔江区| 凉城县| 株洲县| 柞水县| 东平县| 安多县| 寿宁县| 广南县| 含山县| 公安县| 武隆县| 丹凤县| 和平区|