oracle 已經分區的表需要怎樣查詢
磐安網站制作公司哪家好,找創新互聯!從網頁設計、網站建設、微信開發、APP開發、成都響應式網站建設等網站項目制作,到程序開發,運營維護。創新互聯公司2013年成立到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創新互聯。
顯示分區表信息
顯示數據庫所有分區表的信息:DBA_PART_TABLES
顯示當前用戶可訪問的所有分區表信息:ALL_PART_TABLES
顯示當前用戶所有分區表的信息:USER_PART_TABLES
顯示表分區信息 顯示數據庫所有分區表的詳細分區信息:DBA_TAB_PARTITIONS
顯示當前用戶可訪問的所有分區表的詳細分區信息:ALL_TAB_PARTITIONS
CREATE OR REPLACE FUNCTION Get_Record_Count(p_table_name varchar2)
RETURN INT
IS
-- 動態SQL的游標.
v_CursorID INTEGER;
-- 動態執行的SQL語句.
v_sql varchar2(1000);
-- SQL 執行的返回值,可以不理會該數據.
v_Dummy INTEGER;
-- 用于保存讀取出來的數據.
v_result INT ;
BEGIN
-- 設置好需要動態執行的 SQL 字符串.
v_sql:=
'SELECT COUNT(1) from ' || p_table_name ;
-- 打開游標.
v_CursorID := DBMS_SQL.OPEN_CURSOR;
-- 分析查詢.
DBMS_SQL.PARSE(v_CursorID, v_sql, DBMS_SQL.V7);
-- 定義好要輸出的列.
DBMS_SQL.DEFINE_COLUMN(v_CursorID, 1, v_result);
-- 執行動態SQL.
v_Dummy := DBMS_SQL.EXECUTE(v_CursorID);
LOOP
IF DBMS_SQL.FETCH_ROWS(v_CursorID) = 0 THEN
-- 如果沒有提取到記錄,那么退出循環
EXIT;
END IF;
-- 提取動態SQL執行出來的結果.
DBMS_SQL.COLUMN_VALUE(v_CursorID, 1, v_result);
END LOOP;
-- 關閉游標
DBMS_SQL.CLOSE_CURSOR(v_CursorID);
-- 返回
RETURN v_result;
END ;
/
DECLARE
v_table_index INT;
v_table_name VARCHAR(20);
v_data_count INT;
BEGIN
v_data_count := 0;
FOR v_table_index IN 0..999 LOOP
-- 組合表名
v_table_name := 'message_' || TO_CHAR(v_table_index, '000');
-- 取得記錄數
v_data_count := v_data_count + Get_Record_Count();
END LOOP;
-- 輸出結果
dbms_output.put_line( TO_CHAR(v_data_count) );
END
沒編譯 測試 運行 過.
SELECT (SUM(B.COLB)-SUM(A.COLA)) CD FROM TESTAB A,TESTCD B WHERE A.COLID=B.COLID HAVING SUM(B.COLB)-SUM(A.COLA) 20;
網站標題:oracle水平分表后如何查詢,oracle分表后怎么查詢
當前地址:http://vcdvsql.cn/article40/hedeeo.html
成都網站建設公司_創新互聯,為您提供自適應網站、網站內鏈、全網營銷推廣、營銷型網站建設、用戶體驗、網站營銷
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯