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
운영게시판
최근게시물
MySQL Q&A 31326 게시물 읽기
No. 31326
값이 없는 년월 찾기 질문드립니다.
작성자
피어스
작성일
2020-12-30 14:07
조회수
2,801

안녕하세요

아래와 같이 결과값을 나타내고자 합니다.


고수님들 도와주세요

(참고로 날짜컬럼은 더미로 임시 만든것이며 데이터컬럼은 현재 존재하는 값입니다.)

 

날짜 데이터 결과값
2017-01 2017-01 O
2017-02 2017-02 O
2017-03 2017-03 O
2017-04   X
2017-05   X
2017-06   X
2017-07 2017-07 O
2017-08 2017-08 O
2017-09 2017-09 O
2017-10 2017-10 O
2017-11 2017-11 O
2017-12 2017-12 O
2018-01   X
2018-02   X
2018-03 2018-03 O
2018-04 2018-04 O
2018-05 2018-05 O
2018-06 2018-06 O
2018-07 2018-07 O
2018-08 2018-08 O
2018-09 2018-09 O
2018-10 2018-10 O
2018-11 2018-11 O
2018-12 2018-12 O

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

with문으로 데이터를 만들어서 비교한 쿼리입니다. 비교할 날짜리스트만 있으면 어떻게든 될것같네요.


WITH RECURSIVE t as (

   SELECT '2017-01-01' as dt

   UNION ALL

   SELECT DATE_ADD(t.dt, INTERVAL 1 MONTH) FROM t WHERE DATE_ADD(t.dt, INTERVAL 1 MONTH) <=   '2018-12-01'

)

SELECT date_format( a.dt , '%Y-%m' ) dt1, 

       date_format( b.dt , '%Y-%m' ) dt2,

       case when date_format( a.dt , '%Y-%m' ) = date_format( b.dt , '%Y-%m' ) then 'O'

            else 'X' end diff

FROM t a LEFT OUTER JOIN test b ON date_format( a.dt , '%Y-%m' ) = date_format( b.dt , '%Y-%m' )

ORDER BY a.dt

정상규(pajama)님이 2020-12-30 16:05에 작성한 댓글입니다.
이 댓글은 2020-12-30 16:18에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
31330재귀호출에 의한 하이락키 구조의 트리형태의 정렬 [4]
김씨
2021-01-22
3324
3132880만건 데이터 조회 쿼리 동시에 요청시 실행시간이 요청수*실행시간 만큼 걸리는 현상... [4]
도와주세요
2021-01-14
3324
31327mac 으로 mariadb 설치 후 데이터베이스 생성이 안됩니다.. [4]
따봉도치
2021-01-05
4414
31326값이 없는 년월 찾기 질문드립니다. [1]
피어스
2020-12-30
2801
31325mysql 5.7.28버전에서 password()함수는 어찌해야하나요.. [3]
이기자
2020-12-30
3002
31323계층형 테이블 -> 한 Row로 마이그레이션 [2]
궁금남
2020-12-16
2697
31322CDC와 Replication의 차이점이 궁금합니다. [1]
왜이러니
2020-12-10
2454
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다