database.sarang.net
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 6887 게시물 읽기
No. 6887
[질문]2건씩 구분된 세로 데이터 가로로 나타내는 query
작성자
안동석(sinheui)
작성일
2015-02-25 16:14
조회수
5,066

데이터

Table t_a( id,d_datetime, value)

id d_datetime value

a 20130101020000 0

a 20130101040000 1

a 20130101060000 0

a 20130101140000 1

a 20130101160000 0

a 20130101170000 0

a 20130101200000 1

a 20130101240000 0

형태의 데이터가 있습니다.

 

이것을

a 20130101040000 20130101060000

a 20130101140000 20130101160000

a 20130101200000 20130101240000

형태로 나타 내고 싶습니다.

 

즉 1다음에 0이 오는 경우에만 데이터를 추출하고 싶습니다.

 

미리 감사합니다.

 

이 글에 대한 댓글이 총 1건 있습니다.

with Table_t As
(
    Select 'a' As id, '20130101020000' As d_datetime, 0 As value   Union All
    Select 'a' As id, '20130101040000' As d_datetime, 1 As value   Union All
    Select 'a' As id, '20130101060000' As d_datetime, 0 As value   Union All
    Select 'a' As id, '20130101140000' As d_datetime, 1 As value   Union All
    Select 'a' As id, '20130101160000' As d_datetime, 0 As value   Union All
    Select 'a' As id, '20130101170000' As d_datetime, 0 As value   Union All
    Select 'a' As id, '20130101200000' As d_datetime, 1 As value   Union All
    Select 'a' As id, '20130101240000' As d_datetime, 0 As value  
)
,Table_t2 As
(
    Select
           a.id
          ,a.d_datetime
          ,a.value
          ,Row_Number() Over ( Order By a.d_datetime Asc) As seq
      From Table_t a
)
,Table_t3 As
(
    Select
           a.id
          ,a.value
          ,a.seq
          ,a.d_datetime
          ,ISNULL(b.d_datetime,'') As d_datetime2
      From Table_t2 a
                      Left Outer Join
                                      (
                                         Select
                                                a.id
                                               ,a.d_datetime
                                               ,a.value
                                               ,a.seq
                                           From Table_t2 a
                                      ) b
                                          On a.seq + 1 = b.seq
                                         And b.value = 0
     Where a.value = 1
)
 Select *
   From Table_t3
 

최한영(terry0515)님이 2015-02-26 16:34에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
6890일자별 호텔방문 손님 수 [5]
양현지
2015-03-10
6824
6889mssql DB 질문드립니다. [1]
듀기파파
2015-03-09
4666
6888select count 문의 [1]
신상우
2015-03-03
4872
6887[질문]2건씩 구분된 세로 데이터 가로로 나타내는 query [1]
안동석
2015-02-25
5066
6886MSSQL 초보문의 [2]
강형우
2015-02-25
4783
6885MDF, LDF xcopy 시에 파일소유자가 궁금합니다.
김지만
2015-02-25
4791
6884중복순번 나타내기 [1]
초보
2015-02-16
4827
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.050초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다