※乘積運算
R1xR2 =R3
ex
select emp. 姓名 , supplier.供應商
from emp,supplier
※聯集運算子
將2個客戶名單合併,把相同的替除。
ex
select 姓名
from emp
union
select 供應商
from supplier
※交集運算子
R1∩R2=R3 (挑出重覆的值域)
ex
select emp.姓名
from emp,supplier
where emp.姓名 = supplier.供應商
※差集運算子
R1- R2 = R3
not exists (扣除)
ex
select 姓名
from emp
where not exists
(select 供應商 from supplier
where supplier.供應商 = emp.姓名)
※合併運算子
ex
select emp.姓名,supplier.供應商
from emp (left/right/inner) join supplier on emp.姓名 = supplier.供應商
問1. 查詢所有起司類產品的供應商
解答1:
select p.產品 , s.供應商
from product p inner join supplier s
on p.供應商編號 = s.供應商編號
where p.產品 like '%起司%'
解答2:
select p.產品 , s.供應商 , t.類別名稱
from product p , supplier s , type t
where p.產品 like '%起司%'
and p.供應商編號 = s.供應商編號
and p.類別編號 = t.類別編號
※ 述詞all、distinct 、 limit
select all 連絡人
from supplier
select 連絡人
from supplier
limit 3,5
ex
select emp.姓名,supplier.供應商
from emp (left/right/inner) join supplier on emp.姓名 = supplier.供應商
問1. 查詢所有起司類產品的供應商
解答1:
select p.產品 , s.供應商
from product p inner join supplier s
on p.供應商編號 = s.供應商編號
where p.產品 like '%起司%'
解答2:
select p.產品 , s.供應商 , t.類別名稱
from product p , supplier s , type t
where p.產品 like '%起司%'
and p.供應商編號 = s.供應商編號
and p.類別編號 = t.類別編號
※ 述詞all、distinct 、 limit
select all 連絡人
from supplier
select 連絡人
from supplier
limit 3,5
No comments:
Post a Comment