====== REMOTE DATABASE LINK ====== ===== DATABASE LINK ===== - 원격에서 정보를 가져오는 부분에 있어서 제한이 있다. - 그 제한을 알고 제대로 활용해보자. ===== Oracle에서 remote database query 하는 중요 포인트 (1004553.6) ===== - Aggregate functions like MAX(), COUNT() are NOT passed across the net but rather are performed on the local node. \\ : **MAX(),COUNT() 같은 집계함수는 원격에서 수행되지 않고, 로컬로 데이타를 복사하여 수행됩니다.** - Expressions in the SELECT list are decomposed into columns and evaluated when the data is retrieved. \\ : **SELECT 리스트로 표현되는 것은 컬럼단위로 측정되어 되돌아 오는 것이다. ** - Only a relevant subset of columns are fetched across the net. \\ : ** 컬럼의 서브셋만이 패치(fetch)될 수 있다.** - An expression in a WHERE clause is passed across to the remote database if it compares the remote column to a literal (eg ename = 'KING'). \\ : **WHERE 절에있는 표현식에서 원격의 리터럴 컬럼과 비교한다면 원격 데이터베이스를 통해서 전달한다. (예) ename='KING' ** - Expressions in a WHERE clause are passed to the remote database if all columns are in the expression are located in the same remote table the remote database (eg emp.sal * 0.20 > emp.bonus) - Datatype conversion functions like TO_CHAR() in a WHERE clause are subject to the conditions in #4 and #5. - The optimizer only has knowledge of local indexes when making decisions about how to execute a query. - Remote indexes can be still be used to resolve the decomposed query sent to the remote database. - GROUP BY is not sent to the remote database. \\ : **GROUP BY 는 원격디비에서 계산되지 않는다** - ORDER BY is not sent to the remote database. \\ : **ORDER BY 는 원격디비에서 계산되지 않는다**