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

   Á¶È¸ 4288   Ãßõ 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 2098/5688
2015-12   1536746   ¹é¸Þ°¡
2014-05   5000881   Á¤ÀºÁØ1
2016-07   4288   Landa
2014-02   4288   ¹Ú¹ÎÇõA
2015-09   4288   ±è°Ç¿ì
2015-11   4288   °Å´Ï³×
2016-11   4288   Á¦¶óµåTN
2019-01   4288   ¹¹¶óÄ«³ë
2020-06   4288   ºÒ¾Ë¿Õ
2021-03   4288   AMDºô·±
2018-08   4288   ÅëÅë9
2014-07   4288   ºô´õ¯
2018-05   4288   Dreamer
2016-03   4288   Çϳª·ë
2016-11   4288   ºÒ¹«°ñ
2013-12   4288   ȲÁø¿ì
2016-12   4288   ¿¹¸°ÆÄÆÄ
2015-12   4288   Èûµå³×°ø¼³
2018-12   4289   ºÎ»êÃʺ¸
2006-08   4289   ±èÈñÁø
2017-06   4289   À¸¶óÂ÷Â÷Â÷
2006-01   4289   °í¿¬Á¶