[MSSQL] 로우 합치기 STUFF, FOR XML PATH, mysql group_concat 기능


개발을 하다보면 가끔씩 필요한 기능이다.


중복되는 로우가 있는데 조인하면 다른 데이터들도 같이 나올때


중복되는거 합치고 여러로우로 된 데이터들만 한 컬럼에 한줄로 표현하고 싶을때가 있다.



ID 

data 

 사과

배 

 2

망고 

사과 

배 


이런 경우


ID 

data 

사과,배 

 2

망고,사과,배 


이렇게 뽑아내고 싶을때 사용하는 방법이다.



여기서 사용할건 STUFF와 FOR XML PATH다


간단하게 그냥 예제를 보도록 하자


1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT 
    DISTINCT ID, -- id 중복 제거
    STUFF(( 
        SELECT 
            ',' + DATA
        FROM 
            dataTbl b 
        WHERE 
            b.ID = a.ID 
            FOR XML PATH('') ),1,1,'') AS NAME 
FROM 
    dataTbl a
 
cs


이런식으로 사용하면 된다.


dataTbl이 단일 테이블이 아니라 그냥 괄호로 묶어서 조인해놓은 서브쿼리를 사용해도 무방하다.



리니지2 레볼루션 무한으로 다이아 받는 방법


오늘 갑자기 블로그 유입검색어중에 무한다이아 라는게 보이길래 뭔가 했다 


무한뽑기에 관한 포스팅을 한적은 있어도 무한다이아라니? 그래서 찾아보았더니 



얘네들 게임 진짜 얼마나 대충만든거지 아니 잘만든 게임인데 이정도 수준 버그가 먹힐줄은 몰랐다


일단 무슨 내용인지 확인해보자





출처 : http://www.inven.co.kr/board/powerbbs.php?come_idx=4854&name=subjcont&keyword=%EB%B2%84%EA%B7%B8&mskin=l2mobile&l=2517




녹스를 이용하는 사용자에 한해서 매일다이아 수령후 PC시간 변경


그리고 재부팅을 한후 다시 다이아 수령을 하는 방법이다.




매일 한번씩 보상을 받는 시스템에서 특히 온라인게임에서 디바이스 시간을 기준으로 받는다니


이건 예전 1인개발 게임에서나 먹히던 방법이 아니던가


보통 이런건 서버에 있는 시간 기준으로 한다던가


날짜 체크 로직을 꼼꼼히 만들어야 하는거 아닌가?


나도 개발할때 엄청 꼼꼼하게 하는건 아니지만 그래도 이건 너무했다 



지금 이 버그를 악용해서 다이아를 모으고 다이아 세탁하는 유저들을 저격하는 글들도 올라오고 있는 상황이다.


물론 버그가 막혔다고는 하지만 실망이다.


이런 수준의 버그가 존재한다면 다른 버그들도 분명히 많이 있고 악용하고 있는 사람들도 많을 것 이다.


가디언 키우다가 소과금하고도 좌절감에 리세마라 하고 있는데 이 미칠듯한 허탈감이란 ㅋㅋㅋㅋ



녹스를 활용한 버그가 많은 것 같은데 이래서 PC구동을 막아놓은것 같다.



2016/12/27 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 요새전에 대해 알아보자

2016/12/26 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 녹스 튕김현상 해결방법

2016/12/23 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 크리스마스 이벤트

2016/12/23 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 탄력의 효과는 무엇인가 [답변]

2016/12/22 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 시체렉 해결 방법

2016/12/22 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 혈맹 만들기, 포상, 혈원초대

2016/12/22 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 합성, 승급, 강화, 집혼석, 승급석, 주문서 관련한 정보

2016/12/20 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 집혼석 싸게 제거,추출 하기 개꿀팁

2016/12/20 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 아데나 모으기, 노가다 방법

2016/12/18 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 글자 이벤트 획득경로 및 보상 정보

2016/12/16 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 무한뽑기 버그 발생

2016/12/16 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 피의증거 노가다

2016/12/16 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 31렙 전직퀘스트 공략

2016/12/16 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 초반 퀘스트 보스몹 잡기 팁

2016/12/16 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 레벨업 공략, 레벨업 막힐때 팁

2016/12/15 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 비정상적인 동작으로 인하여 팝업 튕김현상

2016/12/15 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] 무과금러 공략&소소한 팁

2016/12/15 - [Yame Game Life/Lineage2 revolution] - [리니지2 레볼루션] security detection 해결방법


+ Recent posts