토픽을 선택하세요
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
공지사항
자유게시판
구인|구직
운영게시판
UserID
Passwd
텔레그램 로그인
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 6773 게시물 읽기
News
|
Q&A
|
Columns
|
Tutorials
|
Devel
|
Files
|
Links
No. 6773
이게 가능할까요?
작성자
궁금
작성일
2013-12-10 14:23
조회수
8,757
안녕하세요.
a라는 테이블에,
b라는 필드가 있다고할때,
값이 아래와 같이 입력되어있다고하면요.
1
2
4
8
9
11
12
13
14
1,2는 연속숫자고 8,9도 연속이고 하니까
시작숫자 | 연속숫자
1 | 2개연속
4 | 1개연속
8 | 2개연속
11 | 4개연속
이렇게 나오게 하려면
어찌해야할가요?
이 글에 대한 댓글이 총 2건 있습니다.
커서를 쓰면 되긴 할거같은데...
커서외에 방법이 없을까해서요
궁금님이 2013-12-10 14:36에 작성한 댓글입니다.
Edit
X
WITH tbl_a ( b )
AS
(
SELECT 1
UNION ALL SELECT 2
UNION ALL SELECT 4
UNION ALL SELECT 8
UNION ALL SELECT 9
UNION ALL SELECT 11
UNION ALL SELECT 12
UNION ALL SELECT 13
UNION ALL SELECT 14
)
SELECT MIN( b ) AS 시작숫자, CAST( MAX(b) - MIN(b) + 1 AS NVARCHAR(MAX) ) + N'개연속' AS 연속숫자
FROM(
SELECT ROW_NUMBER() OVER ( ORDER BY b DESC) AS rn, b
FROM tbl_a
) AS aa
GROUP BY rn+b
ORDER BY MIN( b )
;
우욱님이 2013-12-10 15:10에 작성한 댓글입니다.
Edit
X
[
Top
]
No.
제목
작성자
작성일
조회
6776
데이터의 부분만 update 가능한가요?
[1]
김우성
2013-12-14
8637
6775
열을 행으로 바꾸는 방법좀 알려주서요
[4]
이남현
2013-12-12
11635
6774
select절 스칼라서브쿼리 반환되는 컬럼이 여러개일때 어떻게 하면 좋을까요?(다중컬럼)
[3]
cReAm
2013-12-11
11373
6773
이게 가능할까요?
[2]
궁금
2013-12-10
8757
6771
데이터 레코드 양이 많을시 select 등 쿼리 속도
[4]
질문
2013-12-09
10964
6770
자답입니다. ^ㅡ^
[3]
wolfre
2013-12-09
8721
6769
안녕하세요..
[4]
초보입니다.
2013-12-09
8264
All about the DATABASE...
Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초,