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

   Á¶È¸ 4261   Ãßõ 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 2231/5686
2015-12   1509286   ¹é¸Þ°¡
2014-05   4972967   Á¤ÀºÁØ1
2005-10   5629   ±èÇüÁÖ
2012-10   5629   º´¸ÀÆù
2006-05   5629   °æÀνÄ
2005-07   5628   ¹éÀÎÇÐ
2006-02   5628   ±è°Ç¿ì
2016-08   5628   Áö³ëÁøÈ£
2017-10   5628   µå½´
2005-05   5628   ±è´ëÁß
2016-08   5628   °íÁî³Ë
2016-03   5628   µù±¼ÀÌ
2008-11   5628   °ûÅ¿µ
2006-04   5628   ±è±ÙÈñ
2016-12   5628   ÇູÇϼ¼
2006-01   5628   ±ÇÁ¾ÀÏ
2016-04   5628   ÀÓ½ÃÇö
2005-10   5628   À±È£¿ë
2005-07   5628   Ç¥µ¿¼ö
2012-01   5628   ½ÂÈĴϵµÄì
2005-06   5628   ¹æÈ¿¹®
2015-09   5628   ¼ú²Ûµµ½Ãó¡¦