ORACLE SQL JOIN Äõ¸®¹® Áú¹®µå¸³´Ï´Ù.

   Á¶È¸ 4275   Ãßõ 0    

 

안녕하세요~

오라클을 공부하다가 잘 풀리지 않는 부분이 있어서 질문드립니다.

JOIN SQL 문인데요...


요렇게 테이블 구조가 되어있습니다.

LINK에서 LINKID에 해당하는 모든 NODEID를 NODEORDER로 정렬시켜서 가져온다음

NODEID에 해당하는 x, y 좌표값을 NODE 테이블에서 가져올려고 합니다.

결과는 NODEID, X, Y 필드가 나오도록 할려고합니다.

 

처음에는 IN을 써서

select * from NODE where NODEID in (select NODEID from LINK where LINKID='1234')

로 생각했었으나... 저렇게하면 NODEORDER를 기준으로 정렬을 못시키니....

 

그래서 책보고 어찌어찌 left outer join 을 써봤는데....

잘 안되네요 ^^

검색도 해보고 몇일동안 책보면서 했는데도 잘 안되서 질문드려봅니다.

 

미리 감사합니다^^

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
¹ÚÀÎÈ£ 2016-09
select a.*  from node a
join link b on b.nodeid = a.nodeid
where b.linkid=1234
order by b.nodeorder
     
´äº¯ °¨»çÇÕ´Ï´Ù. ±ò²ûÇÏ°Ô ³ª¿À³×¿ä.
Everyharu 2016-09
±×³É join ¾²½Ã¸é µÉ°Å°°Àºµ¥
SELECT A.NODEID, B.X, B.Y FROM LINK AS A INNER JOIN NODE AS B ON A.NODEID=B.NODEID WHERE LINKID='1234' ORDER BY B.NODEID ASC;
±×³É »ý°¢³ª´Â´ë·Î ²ôÀû¿©ºÃ´Âµ¥ ¹®¹ýÀÌ ¸Â´ø°¡...
     
±×³É join µµ Á¦°¡ Ã¥º¸°íµµ ÀÌÇظ¦ Àß ¸øÇß³ª º¾´Ï´Ù. ´äº¯ °¨»çÇÕ´Ï´Ù~!
¹ÚÀÎÈ£ 2016-09
Äõ¸® ±âº»¼­¸¦ óÀ½ºÎÅÍ ³¡±îÁö
¸ÕÀú ÀÍÈ÷½Ã±æ ±ÇÇÕ´Ï´Ù.
     
»ç½Ç ÇÊ¿äÇÒ¶§¸¸ ºÎºÐºÎºÐ Ã¥ ã¾Æ¼­ Âü°íÇÏ¿´´õ´Ï Áö½ÄÀÌ ´ÃÁö¸¦ ¾Ê³×¿ä.
¹ÚÀÎÈ£´Ô ¸»¾¸¿¡ ¶ß²ûÇϳ׿ä. ´Ù½Ã °øºÎÇÏ°Ú½À´Ï´Ù!
Àϱ¹ 2016-09
SELECT LINK.NODEID
    , MIN(NODE.X) N_X
    , MIN(NODE.Y) N_Y
  FROM (SELECT LINK.NODEID
            , LINK.NODEORDER
          FROM LINK
        WHERE LINK.LINKID = '1234'
        ORDER BY LINK.NODEORDER) LINK,
        NODE
 WHERE LINK.NODEID = NODE.NODEID(+)
 GROUP BY LINK.NODEID;


¿øÇÏ´Â ´äÀÌ ¸Â³ª¿ä?
     
À§ÀÇ Äõ¸®¹®´ë·Î Çغ¸´Ï GROUP BY Àμö°¡ À߸øµÇ¾ú´Ù°í ³ª¿À´Âµ¥... ¹ÚÀÎÈ£´ÔÀÌ ¾Ë·ÁÁֽŵ¥·Î ÇÏ´Ï ¿øÇÏ´Â ´äÀÌ ³ª¿À³×¿ä.
½Å°æ½á¼­ Á¶¾ðÇØÁֽŠÄõ¸®¹® °¨»çÇÕ´Ï´Ù.
Á¦°¡ ¹Ý¼ºÇÏ°í °øºÎÁ» ´õ ÇÏ°Ú½À´Ï´Ù^^
±èÀ±¼ú 2016-09
T-SQL +- outer ±¸¹® »ç¿ë¸øÇÏ°Ô µÈÁö ²Ï µÇ¾úÀ»°Ì´Ï´Ù. MSSQLÀº 2005ºÎÅÍÀÌ°í ¾Æ¸¶ ¿À¶óŬµµ ÇØ´çµÇÁö ¾ÊÀ»±î ½Í¾î¿ä.
     
¿À¶óŬ ÃÖ½ÅÆÇ ±¸Çؼ­ ´Ù½Ã °øºÎÇؾ߰ڽÀ´Ï´Ù.
Äõ¸®¹®À̶ó°í ´Ù ¶È°°Áö ¾Ê±º¿ä. ^^
²Þµ¹ÀÌ 2016-09
SELECT B.LINKID
          ,A.NODEID
          ,B.NODEORDER
          ,A.X
          ,A.Y
FROM  NODE A,LINK B
WHERE  A.NODEID =B.NODEID
AND      B.LINKID='1234'
ORDER BY B.NODEORDER

¸ð¹ÙÀϷΠŸÀÌÇÎ Ä¡±â Èûµå³×¿ä
NODEID·Î Á¶ÀÎÇؼ­ X,Y°ªÀ» º¸°í
NODEORDER·Î Á¤·Ä

°³¹ßÀÚ´Â µ¥ÀÌÅ͸¦ Ž»öÇÏ´Â ¸ðÇè°¡ÀÔ´Ï´Ù
õõÈ÷ ½ÃÀÛÇغ¸¼¼¿ä


QnA
Á¦¸ñPage 2232/5687
2014-05   4990138   Á¤ÀºÁØ1
2015-12   1526117   ¹é¸Þ°¡
2003-07   10126   °­Èñ¼ö
2017-12   5036   À¸¶óÂ÷Â÷Â÷
2009-08   5202   ¹Ú¹®Çü
2016-10   5362   ÄĹÚ
2021-09   2447   ³ª¿ì¸¶Å©
2006-03   5456   À̹®Èì
2006-03   5454   ±èÁ¤È£
2017-12   3573   ¾Æ¸®½Ã¸¶
2019-02   3925   ÀϹÝÀ¯Àú
2015-11   12728   ÁÖ¿ëÈÆ
2003-08   8407   ¹ÚÁø¿µ
2019-02   3713   Memoria
2019-02   2890   ÇãÀα¸¸¶Æ¾
2021-09   1976   galaxyfamily
2023-04   1977   ű¤¼º
2006-04   5930   Á¤¸íÇö
2014-08   4560   À嵿°Ç2014
2006-04   5891   ¿À½ÂÁØ
2017-12   3700   ³ªÆÄÀÌ°­½ÂÈÆ
2003-09   11223   ÀÓ¿µº¸