转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> ORACLE >> 正文
Oracle常見問題集(三)         ★★★★

Oracle常見問題集(三)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:4905 更新时间:2009/4/22 22:05:50
不能

每個用戶都有一個private synonym - sal_limit , 它們是不同的物件

select count(*0 from work_city where sdesc like ''''NEW%'''';

兩個用戶訪問相同的物件public synonym - work_city

select a.sdesc,b.location from work_city a , plant_detail b where

a.city_id = b.city_id

不能

用戶jack 通過private synonym訪問plant_detail jill 是表的所有者,物件不同.

C. 兩個SQL語句中必須使用相同的名字的綁定變數(bind variables)

 

例如:

 

第一組的兩個SQL語句是相同的(可以共用),而第二組中的兩個語句是不同的(即使在運行時,賦於不同的綁定變數相同的值)

a.

select pin , name from people where pin = :blk1.pin;

select pin , name from people where pin = :blk1.pin;

 

b.

select pin , name from people where pin = :blk1.ot_ind;

select pin , name from people where pin = :blk1.ov_ind;

4. 選擇最有效率的表名順序(只在基於規則的優化器中有效)

ORACLE的解析器按照從右到左的順序處理FROM子句中的表名,因此FROM子句中寫在最後的表(基礎表 driving

table)將被最先處理. FROM子句中包含多個表的情況下,你必須選擇記錄條數最少的表作爲基礎表.ORACLE處理多個表時,

會運用排序及合併的方式連接它們.首先,掃描第一個表(FROM子句中最後的那個表)並對記錄進行派序,然後掃描第二個表(FROM子句中最後第二個表),最後將所有從第二個表中檢索出的記錄與第一個表中合適記錄進行合併.

 

例如:

TAB1 16,384 條記錄

TAB2 1 條記錄

 

選擇TAB2作爲基礎表 (最好的方法)

select count(*) from tab1,tab2 執行時間0.96

 

選擇TAB2作爲基礎表 (不佳的方法)

select count(*) from tab2,tab1 執行時間26.09

 

如果有3個以上的表連接查詢, 那就需要選擇交叉表(intersection table)作爲基礎表,

交叉表是指那個被其他表所引用的表.

 

例如:

 

EMP表描述了LOCATION表和CATEGORY表的交集.

 

SELECT *

FROM LOCATION L ,

CATEGORY C,

EMP E

WHERE E.EMP_NO BETWEEN 1000 AND 2000

AND E.CAT_NO = C.CAT_NO

AND E.LOCN = L.LOCN

 

將比下列SQL更有效率

 

SELECT *

FROM EMP E ,

LOCATION L ,

CATEGORY C

WHERE E.CAT_NO = C.CAT_NO

AND E.LOCN = L.LOCN

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ...  下一页 >> 


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台