SQL은 다른 테이블의 날짜 범위를 기반으로 테이블에서 날짜가 속하는 위치 찾기

TheOriginalBMan

나는 SQL에서 매우 간단하다고 생각하는 것을 시도하고 있습니다. 이 솔루션을 살펴 보았지만 코드 열이 없기 때문에 내가 찾고있는 것과 완전히 동일하다고 생각하지 않습니다. 다음과 같은 테이블이 하나 있습니다 (다른 열이 있지만이 질문에 포함되지 않으므로 간결성을 위해 생략했습니다).

TABLE T1

   ID  | CODE | DATE                 | ...
 ------------------------------------------
   0   |  A1  | 2013-01-17 00:00:00  | ...
   1   |  A1  | 2014-02-01 00:00:00  | ...
   2   |  B5  | 2014-06-30 00:00:00  | ...
   3   |  C1  | 2013-12-01 00:00:00  | ...
   4   |  B5  | 2012-04-20 00:00:00  | ...

그런 다음 별도의 테이블에 다음과 같은 코드에 대한 정보가 있습니다.

TABLE T2

  STARTDATE           | ENDDATE             | CODE | DESCRIPTION     | ...
 --------------------------------------------------------------------------
  2012-01-01 00:00:00 | 2013-05-17 00:00:00 |  A1  | No room         | ...
  2013-05-17 00:00:00 | 2014-12-31 00:00:00 |  A1  | Not extra room  | ...
  2011-02-12 00:00:00 | 2013-12-31 00:00:00 |  B5  | Lights          | ...
  2014-01-01 00:00:00 | 2014-08-11 00:00:00 |  B5  | Lights (dim)    | ...

기본적으로의 모든 코드는의 코드와 T1일치 T2하지만 해당 코드에 대한 설명은 날짜에 따라 변경됩니다. 그래서 내가 곤경에 처한 것은 T2의 코드에 해당하는 설명을 찾는 T1것이지만 올바른 범위에 있어야합니다 [STARTDATE, ENDDATE].

예를 들어 ID=0in T1은의 ID=1날짜를 기준으로 "No room"이라는 설명이있는 반면 "Not extra room"이라는 설명이 있습니다 T1.

편집 : 나는 정말로 이것을 필요 이상으로 어렵게 만들고 있다고 생각합니다. WHERE절에서 다음과 같이 간단합니까?

WHERE T1.DATE >= T2.STARTDATE and T1.DATE <= T2.ENDDATE
Nebojsa Susic

이와 같은 검색어를 찾고 있습니까?

SELECT *
FROM T1
INNER JOIN t2 on t1.code = t.code and t1.date >= t2.startdate and t1.date <= t2.enddate
...

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

날짜 범위 사이의 하위 테이블에서 가장 높은 날짜를 기준으로 기본 테이블에서 행 선택

분류에서Dev

날짜 범위 사이의 하위 테이블에서 가장 높은 날짜를 기준으로 기본 테이블에서 행 선택

분류에서Dev

sql-다른 테이블의 열을 기반으로하는 조건부 쿼리 (날짜 범위)

분류에서Dev

두 테이블에서 날짜 범위가 겹치는 항목 찾기

분류에서Dev

SQL에서 다른 테이블의 날짜를 기반으로 한 테이블의 수량 합계 계산

분류에서Dev

내 SQL 테이블에서 사용 가능한 날짜 범위 찾기

분류에서Dev

상위 WBS 번호를 기준으로 "하위"시작 날짜 범위의 가장 이른 날짜에서 "상위"시작 날짜 가져 오기

분류에서Dev

Oracle SQL의 연속 및 비 연속 날짜 범위 : 가장 이른 날짜 찾기

분류에서Dev

주어진 외래 키에 대해 다른 날짜 범위 사이가 아닌 한 테이블의 모든 날짜 범위를 쿼리하는 SQL

분류에서Dev

다른 테이블의 날짜를 기준으로 날짜 범위 내에있는 행을 선택합니다. (MYSQL)

분류에서Dev

동일한 테이블의 다른 열 값을 기반으로 테이블에서 날짜를 추출하는 SQL 쿼리?

분류에서Dev

SQL에서 날짜 범위가 겹치는 레코드 찾기

분류에서Dev

기간 테이블에서 날짜 범위를 제외한 SQL 쿼리

분류에서Dev

JQuery 테이블 분류 기가 날짜 범위 문자열에서 작동하지 않습니다.

분류에서Dev

SQL Server는 테이블에서 시퀀스 날짜를 찾고 가능한 경우 기간을 만듭니다.

분류에서Dev

날짜 차이를 기반으로 테이블을 가져 오는 SQl 쿼리

분류에서Dev

SQL을 사용하여 유효한 날짜 테이블에서 데이터가없는 날짜 범위를 어떻게 찾을 수 있습니까?

분류에서Dev

날짜가 날짜 범위 postgres와 비교되는 두 테이블에서 일치하는 데이터 가져 오기

분류에서Dev

다른 테이블에서 날짜 범위에 대한 계산 일 가져 오기

분류에서Dev

SQL Server의 두 테이블 내에서 날짜 범위를 반복하는 방법

분류에서Dev

최소 날짜 인 테이블의 다른 열에 따라 열에서 값을 찾기위한 쿼리

분류에서Dev

SQL은 다른 테이블의 날짜 시간 범위에서 테이블 열의 값을 얻는 방법입니까?

분류에서Dev

해당 날짜 범위에 대해 다른 테이블의 이름으로 날짜를 분류하는 레코드 별

분류에서Dev

SQL : SQL에서 3 개의 테이블을 결합하고, 가장 이른 날짜를 반환하고 날짜가 null이 아닙니다.

분류에서Dev

Excel VBA : 날짜 범위 테이블에서 날짜 행을 찾는 vlookup

분류에서Dev

날짜에 두 테이블을 조인합니다. 여기서 오른쪽 테이블의 날짜는 왼쪽 테이블의 날짜보다 크지 만 오른쪽 테이블의 다음으로 큰 날짜보다 작습니다.

분류에서Dev

SQL Server-두 번째 테이블의 가장 빠른 날짜를 기준으로 두 테이블 조인

분류에서Dev

테이블의 다른 열별로 그룹화 주어진 날짜 사이의 날짜의 범위를 얻을 SQL은

분류에서Dev

날짜 행으로 구성된 테이블에서 날짜가 특정 날짜 범위에있는 행 수를 계산하는 방법

Related 관련 기사

  1. 1

    날짜 범위 사이의 하위 테이블에서 가장 높은 날짜를 기준으로 기본 테이블에서 행 선택

  2. 2

    날짜 범위 사이의 하위 테이블에서 가장 높은 날짜를 기준으로 기본 테이블에서 행 선택

  3. 3

    sql-다른 테이블의 열을 기반으로하는 조건부 쿼리 (날짜 범위)

  4. 4

    두 테이블에서 날짜 범위가 겹치는 항목 찾기

  5. 5

    SQL에서 다른 테이블의 날짜를 기반으로 한 테이블의 수량 합계 계산

  6. 6

    내 SQL 테이블에서 사용 가능한 날짜 범위 찾기

  7. 7

    상위 WBS 번호를 기준으로 "하위"시작 날짜 범위의 가장 이른 날짜에서 "상위"시작 날짜 가져 오기

  8. 8

    Oracle SQL의 연속 및 비 연속 날짜 범위 : 가장 이른 날짜 찾기

  9. 9

    주어진 외래 키에 대해 다른 날짜 범위 사이가 아닌 한 테이블의 모든 날짜 범위를 쿼리하는 SQL

  10. 10

    다른 테이블의 날짜를 기준으로 날짜 범위 내에있는 행을 선택합니다. (MYSQL)

  11. 11

    동일한 테이블의 다른 열 값을 기반으로 테이블에서 날짜를 추출하는 SQL 쿼리?

  12. 12

    SQL에서 날짜 범위가 겹치는 레코드 찾기

  13. 13

    기간 테이블에서 날짜 범위를 제외한 SQL 쿼리

  14. 14

    JQuery 테이블 분류 기가 날짜 범위 문자열에서 작동하지 않습니다.

  15. 15

    SQL Server는 테이블에서 시퀀스 날짜를 찾고 가능한 경우 기간을 만듭니다.

  16. 16

    날짜 차이를 기반으로 테이블을 가져 오는 SQl 쿼리

  17. 17

    SQL을 사용하여 유효한 날짜 테이블에서 데이터가없는 날짜 범위를 어떻게 찾을 수 있습니까?

  18. 18

    날짜가 날짜 범위 postgres와 비교되는 두 테이블에서 일치하는 데이터 가져 오기

  19. 19

    다른 테이블에서 날짜 범위에 대한 계산 일 가져 오기

  20. 20

    SQL Server의 두 테이블 내에서 날짜 범위를 반복하는 방법

  21. 21

    최소 날짜 인 테이블의 다른 열에 따라 열에서 값을 찾기위한 쿼리

  22. 22

    SQL은 다른 테이블의 날짜 시간 범위에서 테이블 열의 값을 얻는 방법입니까?

  23. 23

    해당 날짜 범위에 대해 다른 테이블의 이름으로 날짜를 분류하는 레코드 별

  24. 24

    SQL : SQL에서 3 개의 테이블을 결합하고, 가장 이른 날짜를 반환하고 날짜가 null이 아닙니다.

  25. 25

    Excel VBA : 날짜 범위 테이블에서 날짜 행을 찾는 vlookup

  26. 26

    날짜에 두 테이블을 조인합니다. 여기서 오른쪽 테이블의 날짜는 왼쪽 테이블의 날짜보다 크지 만 오른쪽 테이블의 다음으로 큰 날짜보다 작습니다.

  27. 27

    SQL Server-두 번째 테이블의 가장 빠른 날짜를 기준으로 두 테이블 조인

  28. 28

    테이블의 다른 열별로 그룹화 주어진 날짜 사이의 날짜의 범위를 얻을 SQL은

  29. 29

    날짜 행으로 구성된 테이블에서 날짜가 특정 날짜 범위에있는 행 수를 계산하는 방법

뜨겁다태그

보관