注意:
これらの例を環境にあわせて変更してください。そのままの状態では実行しないでください。
次の文では、Oracleデータベース・サーバー、IBM DB2データベースおよびSybaseデータベース間でデータが結合されます。
SELECT O.CUSTNAME, P.PROJNO, E.ENAME, SUM(E.RATE*P."HOURS") FROM ORDERS@DB2 O, EMP@ORACLE9 E, "PROJECTS"@SYBS P WHERE O.PROJNO = P."PROJNO" AND P."EMPNO" = E.EMPNO GROUP BY O.CUSTNAME, P."PROJNO", E.ENAME;
ビューとシノニムの組合せを介して次のSQL文を使用すると、分散問合せの処理が透過的になります。
CREATE SYNONYM ORDERS FOR ORDERS@DB2; CREATE SYNONYM PROJECTS FOR "PROJECTS"@SYBS; CREATE VIEW DETAILS (CUSTNAME,PROJNO,ENAME,SPEND) AS SELECT O.CUSTNAME, P."PROJNO", E.ENAME, SUM(E.RATE*P."HOURS") SPEND FROM ORDERS O, EMP E, PROJECTS P WHERE O.PROJNO = P."PROJNO" AND P."EMPNO" = E.EMPNO GROUP BY O.CUSTNAME, P."PROJNO", E.ENAME;
次のSQL文を使用して、1つの文でデータ・ストアから情報を取得します。
SELECT * FROM DETAILS;
この文では次の表が取得されます。
CUSTNAME PROJNO ENAME SPEND -------- ------ ----- ----- ABC Co. 1 Jones 400 ABC Co. 1 Smith 180 XYZ Inc. 2 Jones 400 XYZ Inc. 2 Smith 180