假定有三張表
1 訂單表order 包含: 訂單編號 客戶編號 訂單日期
2 訂單詳情表orderitems 包含:訂單詳情編號 訂單編號 產品編號 產品名稱 產品**等
3 客戶表 customers 包含: 客戶編號 客戶姓名 客戶性別 聯絡**等
如果已知產品編號rgan01
那麼現在要列出訂購rgan01產品的所有顧客
怎麼做?
1 在訂單詳情表中查詢出訂購產品編號為rgan01產品的所有的訂單編號 比如有200007,200008兩個訂單
2 在訂單表中查詢出這些訂單編號對應的所有的客戶編號 比如有10000004,100000005兩個客戶
3 在客戶表中查詢出這些客戶編號對應的所有的客戶資訊 比如分別叫張三和李四的兩個客戶
4 從後向前進行整合
第一步在訂單詳情表中查詢出訂購產品編號為rgan01產品的所有的訂單編號
select order_num
from orderitems
where prod_id="rgan01"
查詢結果可能是這樣:
order_num
----------
2000007
2000008
第二步在訂單表中查詢出這些訂單編號對應的所有的客戶編號
select cust_id
from orders
where order_id in(2000007,2000008)
查詢結果可能是這樣:
cust_id
------------
1000000004
1000000005
第三步
在客戶表中查詢出這些客戶編號對應的所有的客戶資訊
select cust_name,cust_phone
from customer
where cust_id in(1000000004,1000000005)
查詢結果可能是這樣:
cust_name cust_phone
---------- -----------
張三 13145678900
李四 13556789000
第四步從後向前進行整合:
select cust_name,cust_phone
from customer
where cust_id in(select cust_id
from orders
where order_num in(select order_num
from orderitems
where prod_id="rgan01"))
當在一張表中需要的資訊沒有時
就只能通過編號聯絡其他表
例如這裡在訂單詳情表中是沒有顧客的任何資訊的
同時已知的產品編號在這三個表裡只存在於訂單詳情表中
要想僅僅通過產品編號就獲得相關的所有顧客資訊
就只能通過編號進行與其他表進行聯絡
先通過產品編號查詢到對應的所有訂單編號
再通過訂單編號查詢到對應的所有顧客編號
最後通過顧客編號查詢到對應的顧客資訊
編號是表進行聯絡的橋梁
通過表和表的聯絡就能查詢到本表所沒有的資訊
當要查詢的資訊本表沒有時
一定要通過編號對錶與表進行聯絡
IT跳槽 走好四步
中國首家職業顧問諮詢機構 可銳職業顧問機構的首席職業顧問卞秉彬先生認為 事業發展總有幾個突破性的關口,就像從量到質的突破需要乙個積累,職業發展也如是,當你費了九牛二虎之力仍然沒有突破的時候,你就要考慮方法和方向是否對頭了。在某it公司做普通程式設計師的李先生有著3年的工作經驗,曾面試過不少知名軟體企...
腦健康四步曲
新的研究使我們注意到高膽固醇可能使腦細胞較易痴呆。心臟 大腦關係到長期健康 心臟病患者做的很多事對於我們大家保持大腦健康也是好的.因此,由防止心臟病發作,你可避免腦消耗。1 服用維生素b 維生素b可以幫助阻止高半胱氨酸,它是損害血管的一種氨基酸。乙份關於芝加哥總部繁忙研究所研究員中老人的研究中發現,...
四步提高員工績效
提高員工的工作績效,促成企業的健康發展,應當從以下四個方面對員工進行管理。一 知人 對員工進行客觀的素質能力評價 知其所長 1 建立一套科學先進的測評體系,該體系應當包括學歷學位 專業技術任職資格 民主評議 領導認定 任務完成度以及其他一些具體的測評指標。2 賽馬不相馬。這是很多國內著名企業比如海爾...