⑴ oracle面試題
3.select ename,(select ename from emp where empno in(a.mgr)) from emp a ;
整個查詢分為子查詢和父查詢,(select ename from emp where empno in(a.mgr))為子查詢,emp a指的是員工表,a為這個查詢為emp表指定的別名,知道了a
代表什麼,a.mgr就好理解了,a.mgr其實就是emp.mgr,表示emp員工表中的mgr(上級編號)欄位,emp表中記錄了員工及員工上級的信息,a.mgr就用來指明員工
的上級的編號,然後輸出員工姓名及他上級姓名。
6.雖然dname和ename在不同的兩張表中,但是通過語句where deptno in(a.deptno)將兩張表的信息關聯上了,這樣就能得到員工姓名及該員工所在的部門名稱。
14.a.deptno,b.deptno分別代表部門表中的部門編號欄位和員工表中的部門編號欄位,它們的作用是將獨立的部門表和員工表中的信息關聯起來,令兩個表的信息
一一對應起來,emp b用來輸出ename,sal欄位,b為emp表在查詢中的別名,可以任意命名,因為a這個名稱已經賦予給dept這個表,若再將a賦予emp表,則會造成
資料庫無法識別a代表的是dept表還是emp表,所以此處命名為b而不是a。
16.group by有分類作用,此處表示,安裝job的類型將查詢結果分為幾類,每一類工作中包含很多不同的工資,然後用min函數從裡面選出最小的工資,當需要對
查詢結果進行聚合時,便可使用group by語句,其後緊跟聚合函數外的所有欄位,比如此處的job欄位。
⑵ oracle資料庫面試題,如下,求解!
sql">1
proct主鍵id
顧客表主鍵acid
商品交易表為聯合主鍵(acid+id),同時acid和id分別是顧客表和商品表的外鍵
2
selectb.acname,b.acadress
fromprocta,customerb,ordercwherea.id=c.idandb.acid=c.acid
anda.name='李子'
3
selectt1.acname
from
(selectb.acname
fromprocta,customerb,ordercwherea.id=c.idandb.acid=c.acid
anda.name='李子')t1,
(selectb.acname
fromprocta,customerb,ordercwherea.id=c.idandb.acid=c.acid
anda.name='蘋果')t2
wheret1.acname=t2.acname4
selectb.acname,
sum(casewhentype='家電'thena.price*c.amountelse0end)as家電價格,
sum(casewhentype='水果'thena.price*c.amountelse0end)as水果價格
fromprocta,customerb,ordercwherea.id=c.idandb.acid=c.acid
groupbyb.acname
⑶ 軟體測試工程師 面試oracle資料庫什麼題目
ORACLE資料庫工程師,日常維護,如:備份,管理
在資料庫中進行開發,不知道樓主要開發什麼,有幾個優秀的第三方工具,toad,plsql可用於各種資料庫開發
⑷ Oracle資料庫面試題學校的考試,求答案求思路
select decode(性別欄位,'A','男','B','女','未知') as 性別 from 表名 (通過decode函數得到想要的值)
select 購物人 from 購物信息 having count(購物人||商品名稱)>1 (count求出購物人購買商品大於1的)
select 姓名,課程,分數 from 成績表 where 姓名 not in(select 姓名 from 成績表 where 分數<=60) (姓名不包含小於60的)
select t.* from (select name,avg(score) score from student) s,student t
where s.name=t.name and s.name like '張%' and s.score>60 (姓張的大於60的,使用模糊查詢,like 以張開頭的欄位)
select rownum,表.* from 表 where id=要查的id號 (rownum 記錄行數)
table3沒有圖看不到
⑸ oracle幾道簡單面試題,請大俠幫忙
1,資料庫遷移需要考慮的問題很多,這個一句兩句也說不完;
2,首先考慮的就是數據量,如果是小表,沒有索引反而訪問還要快一些。
3,權衡全表還是走索引,看SQL的執行計劃就可以了;
4,這個資料庫對象是用在兩個資料庫之間聯接,交換,查詢數據用的。
5,去資料庫里查鎖住的進程,殺了就可以了。之後再分析原因。
6,分區表是數據量大於1.5gb以上才用的吧。
7,臨時表空間當然會滿,查視圖也是一樣的。
8,開了歸檔就相當於win系統的設置里開了系統還原一樣。
9,redo這個設置要看實際情況,根據主機CUP處理能力,資料庫優化參數等因素決定的。
⑹ ORACLE資料庫面試題
1.
update
t
set
logdate=to_date('2003-01-01','yyyy-mm-dd')
where
logdate=to_date('2001-02-11','yyyy-mm-dd');
2.
select
*
from
t
where
name
in
(select
name
from
t
group
by
name
having
coung(*)>1)
order
by
name;--沒說清楚,到底是升序還是降序
3.
select
ID,NAME,ADDRESS,PHONE,LOGDATE
from
(
select
t.*,row_number()
over(partition
by
name
order
by
name)
rn
from
t
)
where
rn
=
1;
4.
update
t
set
(address,phone)=
(select
address,phone
from
e
where
e.name=t.name);
5.
select
*
from
t
where
rownum
<=5
minus
select
*
from
t
where
rownum
<=2;
也沒什麼特別的地方,有些題目用oracle特有的函數去做會比較簡單,像在第三題中用到的oracle的分析函數,以及在第一題中用到的oracle的to_char()函數。
這幾個題目主要是看你能不能使用oracle的函數去處理
⑺ oracle面試題(2)
三號題選A,blob和clob都是大對象數據類型,4000位元組數據限制是在已被建議不再使用的long/long-raw中的限制,lob類型沒有4000位元組限制。clob 指 charactor lob,blob 指 binary lob,因此 clob 只能存放字元型數據,而 blob 沒有限制。
四號題應該選 D, bfile代表文件,但是不想 lob 類型內容是存放在資料庫表內部的,而是存放在資料庫所在主機的文件系統中,因此 bfile 不是大對象。
⑻ oracle資料庫面試題
1、b沒有訪問表employee的許可權,或者有許可權但是在做desc時沒有加用戶名在表前面。
2、在建表時設置了max extent參數導致了表extent數滿了之後不能再進行擴展。
3、tablespace full表示該表空間沒有可擴展的塊了,這是設置了datafile為autoextend off後或者系統中沒有可擴展的物理空間導致。
4、首先我需要有一張主表(pri)擁有關鍵欄位(id),然後分兩種情況,一種是目標表不存在的情況那麼我需要建立目標表,如:create table oerder(id not null,aa char(8),id_p int, primary key(id),forergn key (id_p) references pri(id));。另一種情況是目標表存在,則增加約束條件:alter table order add foreign key (id_p) references pri(id);
5、pct_increase代表的是表在做了第一次extent後,下次再擴展時的增量,它是一個百分比值,也就是說,如果你設置了該值為50那麼在表下一次擴展時擴展量就增加為150%。這是個很「恐怖」的設置,如果你使用了它那麼有可能你會發現你的表空間很快就沒有可擴展的地方了。
6、英文不好,題目意思沒讀懂。
7、這題還是分兩種情況,一種是nt server就是你的database server,那麼你可能需要先在nt server上確認listener已經啟動,然後進行ping和tracert看看是否是網路問題,最後檢查pc上的tnsnames.ora配置文件是否正確,在pc上做tracerc看網路鏈接是否正常?檢查pc上防火牆的設置等。如果nt server 不是你的database server那麼說明你的database server的網路鏈接是正常的,那麼需要的就是:檢查pc上的tnsnames.ora配置文件是否正確,在pc上做tracerc看網路鏈接是否正常,檢查pc上防火牆的設置等。當然還有一種比較特殊的情況,在pc安裝了64位win操作系統+32位的oracle時會發生在cmd下可以進行鏈接,但是使用oracle的其他連接方式如客戶端,oem等等就會報tns錯誤,這是oracle本身的bug。
8、char和varchar2最根本的區別就在於一個是固定長度,另一個是可變長度。它們對空間的佔用量是不同的,在同樣長度的字元下char類型的需要用空字元補充不足的字元數,而varchar2則不會。當然運行效率上char占優。
9、這個太長,懶得打了。
⑼ 面試的時候問你熟悉oracle資料庫嗎
如果是開發的話,那還是基於SQL這種語言的語法了,要多自己使用才能熟悉的。 對於oracle資料庫來說,PL/SQL delelopment是重點,除了SQL,還要了解觸發器trigger,存儲過程procere,任務job,視圖view等等。
⑽ Oracle面試題
語句的寫法往往有很多種,你要根據資料庫的索引來查詢,公司的DBA應該在 month 上建立了索引,在where 語句中必須用到,若沒有就是全表查詢,當然沒效率