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

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

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

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

語(yǔ)法:

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

例:

1.您想查詢(xún)用戶(hù)表(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.您想查詢(xún)用戶(hù)表(USER_INFO)一天前的數(shù)據(jù)

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

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

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

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

恢復(fù)誤刪的數(shù)據(jù)基于前面能否查詢(xún)到歷史數(shù)據(jù),假設(shè)能夠查到一天前的數(shù)據(jù),就可通過(guò)下面語(yǔ)句恢復(fù)被刪除的數(shù)據(jù) (如果您覺(jué)得步驟不直觀的話請(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 語(yǔ)句 可以帶where條件,看您需要插入所有數(shù)據(jù)還是選擇性插入
 INSERT INTO TABNAME SELECT * FROM TABNAME_TEMP ;

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

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

例:恢復(fù)一天前誤刪除的用戶(hù)(用戶(hù) “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ù)不一定能查詢(xún)到,也不一定能找回,故在操作數(shù)據(jù)庫(kù)時(shí)盡量小心操作

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

附:Oracle 查詢(xún)某個(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ù)庫(kù)系統(tǒng)時(shí)間
select sysdate from dual;

總結(jié)

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

相關(guān)文章

最新評(píng)論

南安市| 康马县| 怀集县| 梧州市| 湛江市| 崇州市| 调兵山市| 大埔县| 辽源市| 浮山县| 平远县| 江华| 临潭县| 襄城县| 石屏县| 东乡县| 台东市| 尉氏县| 宁夏| 筠连县| 磐安县| 德清县| 扶余县| 无为县| 凤庆县| 当雄县| 潞西市| 南昌市| 资中县| 博客| 平南县| 泊头市| 乌鲁木齐县| 丹寨县| 泾川县| 绵竹市| 大洼县| 青州市| 武邑县| 大邑县| 巧家县|