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

   Á¶È¸ 4287   Ãßõ 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 5567/5688
2015-12   1536415   ¹é¸Þ°¡
2014-05   5000548   Á¤ÀºÁØ1
2020-02   2679   ÄÚ»Ô»ç³É
2012-03   6400   È«Àμº
2018-12   5673   »ç¶ûÇ϶ó
09-11   859   CW33300
2018-12   2654   ºñ¿¤À̺ê
09-19   558   È︶
2016-09   4288   µÎ½½¾Æºü
2023-01   2260   Sikieiki
2023-01   1257   ÃÖ°­
2017-09   3489   ÀÎõÀ̽ÂÇö
2015-09   6455   ±è°Ç¿ì
2017-09   6010   ¶÷´ÙÀ¼´Â¿°¼Ò
2020-02   3132   ÀÌ°ÇÈñ
10-07   345   ±è¹Î¼ö2
2009-02   5966   ¶Ñ¶Ñ±è´ë¿ø
2015-09   5286   º´µû°³´Ô
2016-09   4624   ±Ç¿ë1
2017-09   4073   ÄĹÚ
2023-02   2342   Tbill
2017-10   3706   ½ÅÀº¿Ö