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

 

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 SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 972
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 1635
10836 sqlserver 파일 그룹 변경 관련 문의 [1] Alicenet 2022.07.19 111
10835 MSSQL 쉬링크 작업할때 DML발생 시 FHQHTSQA 2022.07.15 123
10834 저장프로시저에 있는 print문이 별도로 기록이 남는 곳이 있을까요? [1] 조제인 2022.07.04 179
10833 인덱스 삭제 질문입니다. [3] 펌그래머 2022.07.01 146
10832 mssql 일부 조건만 집계하고 나머지는 그대로 표시할 수 있을까요? [2] 깡이 2022.07.01 130
10831 개체 'function', 데이터베이스 'db', 스키마 'dbo'에 대해 select 권한이 거부되었습니다. 조제인 2022.06.30 153
10830 날짜 조건에서 속도면에서 차이가 있을가요? [4] 아싸라비아콜롬비아 2022.06.29 287
10829 mssql query 질문입니다. [2] PerryLous 2022.06.28 105
10828 검색어가 포함된 컬럼수대로 순위를 매기고 싶은데요 [1] 카루카루 2022.06.27 57
10827 SELECT절 CASE절 질문 [1] BGT051 2022.06.21 314
10826 mssql 프로시저 select 제발 도와주세요 [2] file 도와주세요제발 2022.06.17 240
10825 MSSQL join 관련 질문이 있습니다 [1] file 황윤수 2022.06.14 171
» sql 쿼리 질문입니다. [2] 김재성3058 2022.06.14 110
10823 mssql 쿼리 실행이 안됩니다 [3] file biado**** 2022.06.07 283
10822 SSMS에서 DB 파티션을 나누어놓았는데 원상복구를 어떻게하는지 궁금합니다 [1] file 김누리 2022.06.04 592
10821 SQL2012 -> SQL2016 마이그레이션 [1] sajini**** 2022.06.03 84
10820 미러링 관련하여 질문드립니다. [2] JunH 2022.06.03 317
10819 MSSQL 쿼리를 비교해서 퍼포먼스 정답을 찾을 때 보통 어떻게 하면될까요? [4] 감프 2022.06.02 147
10818 mssql 쿼리분석기에서 쿼리 속도 확인 침 비교하는데 쓰이는 프로시저나 명령어 뭐 없을까요? [4] 감프 2022.06.01 135
10817 mssql 페이징 + count 관련 성능비교? [2] 감프 2022.06.01 303





XE Login