2014-12-31 3 views
1

수동으로 생성 된 목록에 테이블을 조인하는 것과 관련된 쿼리를 실행하고 싶지만 수동 목록 생성을 시도하지 않았습니다.데이터 항목의 수동 목록 쿼리

SELECT 
    * 
FROM 
    ('29/12/2014', '30/12/2014', '30/12/2014') dates 
; 

가 이상적으로 내 출력과 같이 할 것이다 : 나는 아래 수행을 시도하고있는 무슨의 예입니다
29/12/2014
30/12/2014
12분의 31/2014

답변

3

Teradata 릴리스 란 무엇입니까? TD14에서

STRTOK_SPLIT_TO_TABLE있다 : 당신은 쉽게 파생 테이블에 넣고 한 다음에 가입하실 수 있습니다

SELECT * 
FROM TABLE (STRTOK_SPLIT_TO_TABLE(1 -- any dummy value 
           ,'29/12/2014,30/12/2014,30/12/2014' -- any delimited string 
           ,',' -- delimiter 
      ) 
    RETURNS (outkey INTEGER 
      ,tokennum INTEGER 
      ,token VARCHAR(20) CHARACTER SET UNICODE) -- modify to match the actual size 
      ) AS d   

.

여기서 (여기서는 더미 값 1)은 숫자 또는 문자열 열로, 일반적으로 키입니다. 원래 행에 다시 가입하는 데 사용할 수 있습니다.

outkeyinkey과 동일합니다.

tokennum은 입력 문자열의 토큰 위치를 나타냅니다.

토큰은 추출 된 부분 문자열입니다.

+0

설명 할 수 있습니까? 외계인, 토큰, 토큰은 무엇에 사용됩니까? (토큰은 실제 값이지만이 이름을 바꿀 수 있습니까?) outkey와 tokennum을 RETURN 문에서 제외시킬 수 있습니까? 다중 열 테이블에 사용할 수 있습니까? – Nic2352

+0

나는 이것을 * token *이라고 불렀다. 원하는대로 이름을 붙일 수있다. 아니요, * outkey * 및 * tokennum *은 RETURN에서 제외 할 수 없습니다. 아니요, 이것은 단일 열 * inkey *에만 해당됩니다. – dnoeth

0

이 시도 :

선택/12/2014 1929 ' 조합을 선택 '30// 2014 12' 조합 ...

MySql뿐만 아니라 Teradata에서도 작동해야합니다.

+0

죄송합니다. teradata ... –

+0

Teradata ...이 질문을하는 주된 이유는이 목록을 만든 후에는 실제 테이블에이 목록을 추가 할 수 있기를 원합니다. – Nic2352

+0

위 쿼리는 테라 데이타에서도 작동해야합니다. 가능한 경우 조인을 피하고 코드에서 for 루프를 사용하여 누락 된 날짜를 채운다 고 생각하십시오. –