고수님들 한번 봐주십시요.

 

rownum    cor_cd    plant_cd    pline_cd    device_id    stop_dt                  flag
1            100        100           050          13            2022-06-09 07:03:36    RUN
2            100        100           050          13            2022-06-09 11:23:50    IDLE
3            100        100           050          13            2022-06-09 12:28:29    RUN
4            100        100           050          13            2022-06-09 17:20:50    IDLE
1            100        100           050          13            2022-06-10 07:04:52    RUN
2            100        100           050          13            2022-06-10 07:31:37    IDLE
3            100        100           050          13            2022-06-10 07:54:20    RUN
4            100        100           050          13            2022-06-10 11:08:11    IDLE
5            100        100           050          13            2022-06-10 19:21:39    RUN
6            100        100           050          13            2022-06-10 20:33:07    IDLE

 

위와 같은 테이블에서 원하는 결과값은

 

rownum    cor_cd    plant_cd    pline_cd    device_id    stop_dt                  flag
1            100        100           050          13            2022-06-09 07:03:36    RUN

4            100        100           050          13            2022-06-09 17:20:50    IDLE
1            100        100           050          13            2022-06-10 07:04:52    RUN

6            100        100           050          13            2022-06-10 20:33:07    IDLE

 

이렇게 결과값을 구하고 싶은데, 잘 안되네요. 

 

 

select *

from #temp200t a

where 1=1

    and a.flag = 'RUN'

    and a.rownum in (select min(a.rownum)

                    from #temp200t a

                    group by convert(varchar(10), a.stop_dt, 23)

    )

 

union

 

select *

from #temp200t a

where 1=1

    and a.flag = 'IDLE'

    and a.rownum in (select max(a.rownum)

                    from #temp200t a

                    group by convert(varchar(10), a.stop_dt, 23)

    )

 

이렇게 하면 아래와 같이 나옵니다. 

 

rownum    cor_cd    plant_cd    pline_cd    device_id    stop_dt                  flag
1            100        100           050          13            2022-06-09 07:03:36    RUN

4            100        100           050          13            2022-06-09 17:20:50    IDLE
1            100        100           050          13            2022-06-10 07:04:52    RUN

4            100        100           050          13            2022-06-10 11:08:11    IDLE

6            100        100           050          13            2022-06-10 20:33:07    IDLE

No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 451
10830 날짜 조건에서 속도면에서 차이가 있을가요? [4] 아싸라비아콜롬비아 2022.06.29 123
10829 mssql query 질문입니다. [2] PerryLous 2022.06.28 88
10828 검색어가 포함된 컬럼수대로 순위를 매기고 싶은데요 [1] 카루카루 2022.06.27 48
10827 SELECT절 CASE절 질문 [1] BGT051 2022.06.21 170
10826 mssql 프로시저 select 제발 도와주세요 [2] file 도와주세요제발 2022.06.17 188
10825 MSSQL join 관련 질문이 있습니다 [1] file 황윤수 2022.06.14 142
» sql 쿼리 질문입니다. [2] 김재성3058 2022.06.14 98
10823 mssql 쿼리 실행이 안됩니다 [3] file biado**** 2022.06.07 168
10822 SSMS에서 DB 파티션을 나누어놓았는데 원상복구를 어떻게하는지 궁금합니다 [1] file 김누리 2022.06.04 554
10821 SQL2012 -> SQL2016 마이그레이션 [1] sajini**** 2022.06.03 68
10820 미러링 관련하여 질문드립니다. [2] JunH 2022.06.03 292
10819 MSSQL 쿼리를 비교해서 퍼포먼스 정답을 찾을 때 보통 어떻게 하면될까요? [4] 감프 2022.06.02 110
10818 mssql 쿼리분석기에서 쿼리 속도 확인 침 비교하는데 쓰이는 프로시저나 명령어 뭐 없을까요? [4] 감프 2022.06.01 71
10817 mssql 페이징 + count 관련 성능비교? [2] 감프 2022.06.01 188
10816 오라클 mssql 쿼리 변환 요청 [2] 푸푸풍 2022.05.31 67
10815 쿼리 문의 [1] m**** 2022.05.31 44
10814 SQL Database 사용시 처리속도 10배 느려짐 [1] os**** 2022.05.28 113
10813 mysql 광고성 메일 수신동의 확인 안내 메일 2년주기 쿼리 질문있습니다! 아르 2022.05.26 64
10812 multi 컬럼 조건 조회 오류 [1] 시커먼뜨거운메일 2022.05.24 76
10811 SELECT 문 도움 부탁 드립니다. [1] power 2022.05.23 60





XE Login