線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1162
推到 Plurk!
推到 Facebook!

關於虛擬欄位

尚未結案
saningamour
一般會員


發表:18
回覆:17
積分:7
註冊:2003-11-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-02 17:27:43 IP:202.39.xxx.xxx 未訂閱
小弟目前有兩個table table1 有兩個欄位 ID (char) NAME (char) table2 也有兩個欄位 ID(int) EMAIL (char) 小弟想要在table1中建一個虛擬欄位(EMAIL) 目前做法是在 ADODataSet1中 Fields Editor==> add all fields==> new fields ==>Lookup===>ADODataSet2 可以因為兩個table的ID欄位型態不同所以無法join岀正確的EMAIL 請問有什麼方法可以解決呢?
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-03 09:03:45 IP:210.65.xxx.xxx 未訂閱
Hi saningamour,    1. 不要直接使用 Table2 用 Query 取代
SELECT  TO_CHAR(ID) AS ID,
        EMAIL
FROM    TABLE2
如此應該可以正常 Join 2.若 Table1 不編輯,直接使用一個 Query 即可
SELECT  T1.ID,
        T1.NAME,
        T2.EMAIL
FROM    TABLE1 T1,
        TABLE2 T2
WHERE   T1.ID = TO_CHAR(T2.ID)        
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
saningamour
一般會員


發表:18
回覆:17
積分:7
註冊:2003-11-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-03 09:13:43 IP:202.39.xxx.xxx 未訂閱
感謝Fishman的指導 小弟也剛好想到解決方法了 就是您說的第一個方法 用TO_CHAR轉換格式 因為這兩個table不是在同一個DataBase 所以沒辦法直接join
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-03 12:30:30 IP:210.65.xxx.xxx 未訂閱
Hi saningamour,    Sorry !! 一時忘記用了 Oracle 的語法,如果你的 DataBase 中可以透過 DBLink 來進行資料的 Select,也就是說 假設 DB1 與 DB2 皆為 Oracle 的 DataBase,在 DB1 中建立 DBLink 來 Connect DB2,如此即可以對 DB1 下以下之 SQL Command,亦即 DB1 為 DB2 之 Client
SELECT  T1.ID,
        T1.NAME,
        T2.EMAIL
FROM    TABLE2@DB2  T2
        TABLE1      T1,
WHERE   T1.ID = TO_CHAR(T2.ID)
供你參考 ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
系統時間:2024-11-25 16:33:07
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!