資料庫的join問題 |
答題得分者是:eaglewolf
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
請問各位:
我使用FireBrid 1.5x版資料庫(InterBase), 有沒有人有辦法可以對兩個 gdb 檔做 join 成功的經驗 例如 a.gdb 有 a1,a2,a3 table b.gdb 有 b1,b2,b3 table 我想要的語法是如下的功能, 當然目前這個語法是有問題的, 因為我發現這樣的sql無法跨越兩個 gdb檔 而我要的是必須能同時參照兩個gdb select count(*) from b1 gdb2 where gdb2.KEYID in (select gdb1.KEYID from a1 gdb1 where gdb1.STATE="USA") 謝謝! |
eaglewolf
資深會員 發表:4 回覆:268 積分:429 註冊:2006-07-06 發送簡訊給我 |
試試看
set database gdb1 = "a.gdb" set database gdb2 = "b.gdb" select count(*) From gdb2.b1 where gdb2.b1.KEYID in (select gdb1.a1.KEYID from gdb1.a1 where gdb1.a1.STATE="USA") ===================引 用 P.D. 文 章=================== 請問各位: 我使用FireBrid 1.5x版資料庫(InterBase), 有沒有人有辦法可以對兩個 gdb 檔做 join 成功的經驗 例如 a.gdb 有 a1,a2,a3 table b.gdb 有 b1,b2,b3 table 我想要的語法是如下的功能, 當然目前這個語法是有問題的, 因為我發現這樣的sql無法跨越兩個 gdb檔 而我要的是必須能同時參照兩個gdb select count(*) from b1 gdb2 where gdb2.KEYID in (select gdb1.KEYID from a1 gdb1 where gdb1.STATE="USA") 謝謝!
------
先查HELP 再查GOOGLE 最後才發問 沒人有義務替你解答問題 在標題或文章中標明很急 並不會增加網友回答速度 Developing Tool: 1.Delphi 6 2.Visual Studio 2005 3.Visual Studio 2008 DBMS: MS-SQL
編輯記錄
eaglewolf 重新編輯於 2008-04-02 17:04:42, 註解 無‧
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
eaglewolf
資深會員 發表:4 回覆:268 積分:429 註冊:2006-07-06 發送簡訊給我 |
小弟是參考:
http://dn.codegear.com/tw/article/28244 若不行 參考另一篇,或許可行: http://support.codegear.com/tw/article/34889
------
先查HELP 再查GOOGLE 最後才發問 沒人有義務替你解答問題 在標題或文章中標明很急 並不會增加網友回答速度 Developing Tool: 1.Delphi 6 2.Visual Studio 2005 3.Visual Studio 2008 DBMS: MS-SQL |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
Hi P.D.:
如果你用 BDE...可以看看 LOCALSQL.HLP 的 "Heterogeneous joins" 主題. Joins two tables from different databases. SELECT column_list FROM ":database_reference:table_reference", ":database_reference:table_reference" [,":database_reference:table_reference"...] WHERE predicate [AND predicate...] Description Use a heterogeneous join to join two tables that reside in different databases. The joined tables may be of different types (like dBASE to Paradox or Paradox to InterBase), but you can only join tables whose database types are accessible through the BDE (local, ODBC, or SQL Links). A hetergeneous join may be any of the joins supported by local SQL. The difference is in the syntax for the table reference: the database containing each table is specified in the table reference, surrounded by colons and the whole reference enclosed in quotation marks. The database specified as part of the table reference may be a drive and directory reference (for local tables) or a BDE alias. SELECT * FROM ":DBDEMOS:Customer.db" C, ":BCDEMOS:Orders.db" O WHERE (C.CustNo = O.CustNo) |
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |