Oracle ÍâÁ¬½ÓºÍ £¨+£©ºÅµÄÓ÷¨
¶ÔÓÚÍâÁ¬½Ó£¬OracleÖпÉÒÔʹÓÓ(+)”À´±íʾ£¬9i¿ÉÒÔʹÓÃLEFT/RIGHT/FULL OUTER JOIN£¬ÏÂÃ潫ÅäºÏʵÀýÒ»Ò»½éÉÜ¡£
1. LEFT OUTER JOIN£º×óÍâ¹ØÁª
SELECT e.last_name, e.department_id, d.department_name
from employees e
LEFT OUTER JOIN departments d
ON (e.department_id = d.department_id);
µÈ¼ÛÓÚ
SELECT e.last_name, e.department_id, d.department_name
from employees e, departments d
WHERE e.department_id=d.department_id(+);
½á¹ûΪ£ºËùÓÐÔ±¹¤¼°¶ÔÓ¦²¿ÃŵļǼ£¬°üÀ¨Ã»ÓжÔÓ¦²¿ÃűàºÅdepartment_idµÄÔ±¹¤¼Ç¼¡£
2. RIGHT OUTER JOIN£ºÓÒÍâ¹ØÁª
SELECT e.last_name, e.department_id, d.department_name
from employees e
RIGHT OUTER JOIN departments d
ON (e.department_id = d.department_id);
µÈ¼ÛÓÚ
SELECT e.last_name, e.department_id, d.department_name
from employees e, departments d
WHERE e.department_id(+)=d.department_id;
½á¹ûΪ£ºËùÓÐÔ±¹¤¼°¶ÔÓ¦²¿ÃŵļǼ£¬°üÀ¨Ã»ÓÐÈκÎÔ±¹¤µÄ²¿ÃżÇ¼¡£
3. FULL OUTER JOIN£ºÈ«Íâ¹ØÁª
SELECT e.last_name, e.department_id, d.department_name
from employees e
FULL OUTER JOIN departments d
ON (e.department_id = d.department_id);
½á¹ûΪ£ºËùÓÐÔ±¹¤¼°¶ÔÓ¦²¿ÃŵļǼ£¬°üÀ¨Ã»ÓжÔÓ¦²¿ÃűàºÅdepartment_idµÄÔ±¹¤¼Ç¼ºÍûÓÐÈκÎÔ±¹¤µÄ²¿ÃżÇ¼¡£
ÍâÁ¬½Ó:
³ýÁËÏÔʾƥÅäÏàµÈÁ¬½ÓÌõ¼þµÄÊý¾ÝÍâ,»¹¿ÉÒÔÏÔʾijһ¸ö±íÖÐÎÞ·¨Æ¥ÅäÏàµÈÁ¬½ÓÌõ¼þµÄ¼Ç¼!
------------------------------------------------
1) ×óÌõ¼þ(+) = ÓÒÌõ¼þ
×óÌõ¼þËùÔڵıí±ØÐëÑϸñ½øÐÐÏàµÈÁ¬½ÓÌõ¼þµÄÆ¥Åä,¶øÓÒÌõ¼þËùÔڵıí³ýÁËÆ¥ÅäÏàµÈÁ¬½ÓÌõ¼þÍ⣬»¹¿ÉÒÔÏÔʾÎÞ·¨Æ¥ÅäÁ¬½ÓÌõ¼þµÄÊý¾Ý!
Ò²³ÆΪÓÒÍâÁ¬½Ó.
--------------------------------
¿ÉÒÔÓÃÏÂÁÐÓï¾äÈ¡´ú:
SELECT...from ±í1 RIGHT OUTER JOIN ±í2 ON Ìõ¼þ;
2) ×óÌõ¼þ = ÓÒÌõ¼þ(+)
ÓÒÌõ¼þËùÔÚ
Ïà¹ØÎĵµ£º
»ù±¾µÄSql±àдעÒâÊÂÏî
¾¡Á¿ÉÙÓÃIN²Ù×÷·û£¬»ù±¾ÉÏËùÓеÄIN²Ù×÷·û¶¼¿ÉÒÔÓÃEXISTS´úÌæ¡£
²»ÓÃNOT IN²Ù×÷·û£¬¿ÉÒÔÓÃNOT EXISTS»òÕßÍâÁ¬½Ó+Ìæ´ú¡£
OracleÔÚÖ´ÐÐIN×Ó²éѯʱ£¬Ê×ÏÈÖ´ÐÐ×Ó²éѯ£¬½«²éѯ½á¹û·ÅÈëÁÙʱ±íÔÙÖ´ÐÐÖ÷²éѯ¡£¶øEXISTÔòÊÇÊ×Ïȼì²éÖ÷²éѯ£¬È»ºóÔËÐÐ×Ó²éѯֱµ½ÕÒµ½
µÚÒ»¸öÆ¥ÅäÏî¡£NOT EXISTS±ÈNOT INЧÂÊÉ ......
ÉÌÒµºÍÊý¾Ý¿âºÜ¶àʱºò±ØÐë¿çʱÇø¹¤×÷£¬´Ó9i¿ªÊ¼£¬oracle»·¾³¿ªÊ¼ÓÐÁËʱÇøÒâʶ£¬Í¨¹ýÖ¸¶¨Êý¾Ý¿âµÄʱÇøºÍʹÓÃTIMESTAMP WITH TIME ZONEºÍTIMESTAMP WITH LOCAL TIME ZONEÊý¾ÝÀàÐÍÀ´ÊµÏָù¦ÄÜ¡£
TIMESTAMP WITH TIME ZONE²»»á´æ´¢Êý¾Ý¿âʱÇø£¬µ«ÊÇÓÐÒ»¸öָʾÓÃÀ´ËµÃ÷¸Ãʱ¼äËùʹÓõÄʱÇø¡£TIMESTAMP WITH LOCAL TIME ZONE»áͬ ......
CREATE OR REPLACE FUNCTION F_HPS_SPLIT
/*
* ¹¦ ÄÜ: split.
* ÊäÈë²ÎÊý: Liststr string
* ÊäÈë²ÎÊý: Sepe index
* ÊäÈë²ÎÊý: Sepe separator. default is ','.
* return sepeCount
*/
(
......
oracleµÄodbcÍø¹Ø£¨gateway£©¼¸ºõÌṩһ¸öÎÞÏßµÄÊý¾ÝÕûºÏƽ̨£¬ÔÚoracleºÍÆäËüRDBMSÖ®¼ä£¬ÎÒÔÚÕâ²»Ïë˵ËüµÄ£¬²Ù×÷£¬ÏÞÖÆÒÔ¼°Ïà¹ØÐÔ£¬Ëü½â¾öÁËÒ»¸öСÎÊÌ⣬°ÑËü½¨Á¢ÆðÀ´ÄãÄÜ£¬ÀýÈ磬´´½¨Ò»¸ö database link ÔÚoracle ºÍoracleÖ®¼ä£¬±Ï¾¹£¬ÕâÑù²»ÊǺܺÃô£¬ÀýÈçÄãÄÜÔËÐÐÏÂÃæµÄsqlÓï¾ä£¬
select o.col1, m.col1 from or ......
SELECT sde.st_area(zone) from sde.test1 ORDER BY name;//
SELECT shape from schools ORDER BY name;
SELECT objectid, sde.st_astext(SDE.ST_POINTfromSHAPE(shape,0)) AS points from schools;
SELECT name, sde.st_x (zone) "The X coordinate" from test ; //ÕýÈ·Ö´ÐÐ
SELECT name, sde.st_x (shape) "The ......