SQL 最佳化2

我們要做到不但會寫SQL,還要做到寫出效能優良的SQL,以下為筆者學習、摘錄、並匯總部分資料與大家分享!(1)      選擇最有效率的表名順序(只在基於規則的最佳化器中有效):ORACLE的解析器按照從右至左的順序處理FROM子句中的表名,FROM子句中寫在最後的表(基礎資料表 driving table)將被最先處理,在FROM子句中包含多個表的情況下,你必須選擇記錄條數最少的表作為基礎資料表。如果有3個以上的表串連查詢, 那就需要選擇交叉表(intersection

對wait events 和statistics 的理解小記

buffer busy waits說明buffer cache中有一些buffers被多個進程嘗試同時訪問。查看V$WAITSTAT觀察各種類型buffer wait的統計資訊。SELECT class, count FROM V$WAITSTAT WHERE count > 0 ORDER BY count DESC;也可以查看V$SESSION_WAIT觀察當前buffer wait資訊,其中P1-FILE_ID, P2-

ADO和ADO.NET的區別

  ADO和ADO.NET的區別 1. ADO與ADO.NET簡介ADO與ADO.NET既有相似也有區別,他們都能夠編寫對資料庫伺服器中的資料進行訪問和操作的應用程式,並且便於使用、高速度、低記憶體支出和佔用磁碟空間較少,支援用於建立基於用戶端/伺服器和 Web 的應用程式的主要功能。但是ADO使用OLE

資料庫管理應注意的問題

Commit操作不強制將database buffer內容寫到檔案;Commit操作後,server process在提示使用者“操作已完成”之後才釋放相關資源的鎖; 建立資料庫時,資料檔案和記錄檔必須用size指定大小,或用reuse指定到某個已有檔案,否則命令會失敗; 若丟失了所有control file的副本,可以通過重建control file恢複資料庫; 在建立unique或primary

三層結構的B/S系統(收藏)

基於UML和ASP.NET實現三層B/S結構系統開發 基於UML和ASP.NET實現三層B/S結構系統開發作者:胡穎輝 寧賽飛   來源:IBM摘 要 進行良好的系統分析和設計是軟體項目開發的關鍵,構架設計的合理與否往往決定了項目的成敗。本文結合一個項目的開發,闡述了基於UML的系統建模過程和基於ASP.NET實現物件導向的三層結構應用系統的方法。 關鍵詞 ASP.NET; 三層結構; UML建模;

普通物理表、暫存資料表和TABLE(函數)的執行效率對比

16:12:55普通物理表、暫存資料表和TABLE(函數)的執行效率對比普通物理表、暫存資料表和TABLE的用途各不相同,普通表一般存放需要長期儲存的資料,暫存資料表存放某個事務或會話過程中的臨時資料,array是oracle中的數組,也可以用於存放臨時資料,或在OODB中使用。但是,最佳化器在做查詢計劃時,尤其在CBO中,沒暫存資料表和TABLE的統計資料,因此總會得出一些混亂的查詢計劃,往往需要我們用hint去調整。並且,由於實現機制各不相同,他們的查詢效率也不一樣。下面通過一個簡單的測試來

PL SQL基本文法

常量    1. 定義常量的文法格式    常量名 constant 類型標識符 [not null]:=值;    常量,包括後面的變數名都必須以字母開頭,不能有空格,不能超過30個字元長度,同時不能和保留字同名,常(變)量名稱不區分大小寫,在字母后面可以帶數字或特殊字元。括弧內的not null為選擇性參數,若選用,表明該常(變)量不可為空值。    2. 執行個體    在【SQLPlus Worksheet】中執行下列PL/SQL程式,該程式定義了名為pi的數字型常量,長度為9。    

使用dbms_xplan工具查看執行計畫

9i有一個新的包 dbms_xplan,對查詢plan_table表是一個很有用的工具,相對於以前寫一個複雜的SQL語句,然後從plan_table看執行計畫,不如調用 dbms_xplan 包,還可以顯示格式,這個工具的使用也非常方便。調用的文法類似select * from table(dbms_xplan.display(format=>'BASIC')) 使用 TABLE() 操作符,或者 CAST 操作。DISPLAY 函數有三個參數TABLE_NAME

SQL語句匯總-Connect by

5.樹的使用(connect by)表        tree欄位      master sub salesinsert into tree values('主1',     '主2',   15);   insert into tree values('主1',     '主3',   20);           insert into tree values('主2',     '主4',    5);    insert into tree values('主2',     '主5',

淺析.NET開發中代理模式的使用(外摘)

當我們需要使用的對象很複雜或者需要很長時間去構造,這時就可以使用代理模式(Proxy)。例如:如果構建一個對象很耗費時間和電腦資源,代理模式(Proxy)允許我們控制這種情況,直到我們需要使用實際的對象。一個代理(Proxy)通常包含和將要使用的對象同樣的方法,一旦開始使用這個對象,這些方法將通過代理(Proxy)傳遞給實際的對象。    一些可以使用代理模式(Proxy)的情況:    1、一個對象,比如一幅很大的映像,需要載入的時間很長。   

使用設計模式構建通用資料庫訪問類(外摘)

在應用程式的設計中,資料庫的訪問是非常重要的,我們通常需要將對資料庫的訪問集中起來,以保證良好的封裝性和可維護性。在.Net中,資料庫的訪問,對於微軟自家的SqlServer和其他資料庫(支援OleDb),採用不同的存取方法,這些類分別分佈於System.Data.SqlClient和System.Data.OleDb名稱空間中。微軟後來又推出了專門用於訪問Oracle資料庫的類庫。我們希望在編寫應用系統的時候,不因這麼多類的不同而受到影響,能夠盡量做到資料庫無關,當後台資料庫發生變更的時候,不

SQL 陳述式匯總-自訂類型篇

<一>.單自訂類型的應用1.建立一個資料類型create type t_air  as object(id int ,name varchar(20));2.建表create table aaa(id int ,person t_air);3.入資料insert into aaa values(1,t_air(1,'23sdf'));4.詢classPlaceselect a.id ,a.persion.id,a.person.name from aaa

SQL 陳述式匯總-Bulk Collect Into及行列轉換

1.用遊標取資料然後處理(Bulk collect 用法)CREATE OR REPLACE TYPE A AS OBJECT (id NUMBER(9),name VARCHAR2 (20))CREATE OR REPLACE TYPE atypelist AS TABLE OF A;/*定義type類型 A.DECLARE       TYPE cur_type   IS REF CURSOR;      TYPE tab_type   IS TABLE OF A;      c_find_

SQL 陳述式(四)-自訂函數

Create Table henry_test (a varchar2(10),b int);Insert Into henry_test values ('aa',1);Insert Into henry_test values ('bb',1);Insert Into henry_test values ('cc',1);Insert Into henry_test values ('dd',2);Insert Into henry_test values ('ee',2);Insert

一次事務過程與資料庫管理過程

對於開發人員來說,我們經常做的是啟動一個事務,執行SQL,提交事務。這就完成了我們的工作。但是,就在這些簡單的動作背後,網路和資料庫都做了些什麼呢。我們都想知道。 下面以一個執行個體來說明。背景:使用者正運行一個串連到Oracle資料庫的用戶端應用程式,是一個員工檔案管理程式。過程:1.使用者修改了一筆員工檔案記錄的姓名,並單擊了“儲存”,這時用戶端應用程式通過網路向Oracle伺服器處理序發送了一條SQL

SQL 陳述式匯總-With子句

1.使用With 子句重用子查詢用於在sql多次使用相同的子查詢時:樣本一、顯示部門工資總和高於僱員工資總和三分之一的部門名及工資總和(兩次相同子句)  SQL> select dname,sum(sal) as dept_total  from emp,dept             where emp.deptno=dept.deptno  group by dname             having sum(sal)>             (select

資料庫名、執行個體名、ORACLE_SID、資料庫網域名稱、全域資料庫名、服務名

資料庫名、執行個體名、ORACLE_SID、資料庫網域名稱、全域資料庫名、服務名資料庫名、執行個體名、資料庫網域名稱、全域資料庫名、服務名 ,這是幾個令很多初學者容易混淆的概念。相信很多初學者都與我一樣被標題上這些個概念搞得一頭霧水。我們現在就來把它們弄個明白。

Cognos產品組件及各組件功能介紹

從大的模組來說Cognos組件主要包括三個:Cognos Powerplay Transformation Server:負責將資料來源變成資料立方體Cognos Powerplay Enterprise Server:負責將資料立方體以OLAP分析,OLAP報表的方式展現出來;Cognos ReprotNet Server:負責實現基於資料庫的資料查詢、報表製作、儀錶盤製作、報表/儀錶盤展示等等下面分別介紹每個組件包含的組件的功能:Cognos Powerplay

關於SYS使用者的驗證

關於SYS使用者的驗證SYS使用者是Oracle中許可權最高的使用者,而SYSTEM是一個用於資料庫管理的使用者。在資料庫安裝完之後,應立即修改SYS,SYSTEM這兩個使用者的口令,以保證資料庫的安全。可以用三種方法修改口令:sqlplus / as sysdba;1.sql> alter user sys identified by 111112.sql>grant connect to sys identified by 111113.sql>password

ORA-00942:table or view does not exist

    ORA-00942:table or view does not

總頁數: 61357 1 .... 12341 12342 12343 12344 12345 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.