Load

LOAD 문은 파일, 스크립트에 정의된 데이터, 이전에 로드한 테이블, 웹 페이지, 이후 SELECT 문의 결과에서 필드를 로드하거나 자동으로 데이터를 생성하여 필드를 로드합니다.

구문:  

LOAD [ distinct ] fieldlist

[( from file [ format-spec ] |

from_field fieldassource [format-spec]

inline data [ format-spec ] |

resident table-label |

autogenerate size )]

[ where criterion | while criterion ]

[ group_by groupbyfieldlist ]

[order_by orderbyfieldlist ]

인수:  

인수 설명
distinct distinct는 첫 번째 중복 레코드만 로드해야 하는 경우 사용되는 조건자입니다.
fieldlist fieldlist ::= ( * | field {, field } )

로드할 필드의 목록입니다. 필드 목록에 *를 사용하면 테이블의 모든 필드를 지정할 수 있습니다.

field ::= ( fieldref | expression ) [as aliasname ]

필드 정의는 리터럴, 기존 필드에 대한 참조 또는 표현식을 항상 포함해야 합니다.

fieldref ::= ( fieldname |@fieldnumber |@startpos:endpos [ I | U | R | B | T] )

fieldname은 테이블의 필드 이름과 동일한 텍스트입니다. 필드 이름에 공백 등이 포함된 경우 곧은 큰따옴표 또는 대괄호로 묶어야 합니다. 필드 이름을 명시적으로 사용할 수 없는 경우도 있습니다. 이 경우 다른 표기법이 사용됩니다.

@fieldnumber는 구분된 테이블 파일의 필드 번호를 나타냅니다. 이 숫자는 "@"가 앞에 오는 양의 정수여야 합니다. 숫자는 항상 1부터 시작하며 필드 개수까지 지정할 수 있습니다.

@startpos:endpos는 고정 길이 레코드를 가진 파일 내 필드의 시작과 끝 위치를 나타냅니다. 위치는 모두 양의 정수여야 합니다. 이 두 숫자는 "@"가 앞에 와야 하며 콜론으로 구분되어야 합니다. 숫자는 항상 1부터 시작하며 위치 개수까지 지정할 수 있습니다. 마지막 필드의 n은 종료 위치로 사용됩니다.

  • @startpos:endpos의 바로 뒤에 문자 I 또는U가 오는 경우, 로드된 바이트는 부호가 있는(I) 이진 또는 부호가 없는(U) 정수(Intel 바이트 순서)로 해석됩니다. 로드된 위치의 수는 1,2 또는 4여야 합니다.
  • @startpos:endpos의 바로 뒤에 문자 R이 오는 경우, 로드된 바이트는 이진 실수(IEEE 32비트 또는 64비트 부동 소수점)로 해석됩니다. 로드된 위치의 수는 4 또는 8이어야 합니다.
  • @startpos:endpos의 바로 뒤에 문자 B가 오는 경우, 로드된 바이트는 COMP-3 표준에 따라 BCD (Binary Coded Decimal) 숫자로 해석됩니다. 임의의 바이트 수가 지정될 수 있습니다.

expression은 같은 테이블 내의 하나 또는 여러 다른 필드에 따라 숫자 함수 또는 문자열 함수가 될 수 있습니다. 자세한 내용은 표현식의 구문을 참조하십시오.

as는 필드에 새 이름을 할당하는 데 사용됩니다.

from

from은 파일에서 데이터를 로드해야 하는 경우에 사용됩니다.

file ::= [ path ] filename

  • 절대 경로

    ​예: c:\data\

  • QlikView 문서 경로에 대한 상대 경로

    ​예: data\

  • 인터넷 또는 인트라넷상의 위치를 가리키는 URL 주소(HTTP 또는 FTP)입니다. URL에 공백 문자가 포함된 경우 등에는 URL을 인코딩해야 합니다.

    ​예: http://www.qlik.com

    ​예: http://www.enterprise.com/project%20files(http://www.enterprise.com/project files)

경로를 생략한 경우 QlikViewDirectory 문으로 지정된 디렉터리에서 파일을 검색합니다. Directory 문이 없는 경우 QlikView는 일반적으로 QlikView 파일이 위치한 디렉터리인 작업 디렉터리에서 검색합니다.

참고: QlikView 서버 설치 시의 기본 작업 디렉터리는 C:\ProgramData\QlikTech\Documents입니다. 기본 작업 디렉터리는 Qlik Management Console에서 수정할 수 있습니다.

filename에는 표준 DOS 와일드카드 문자(*?)가 포함될 수 있습니다. 이는 지정된 디렉터리 내에서 일치하는 파일이 모두 로드되도록 합니다.

format-spec ::= ( fspec-item { , fspec-item } )

서식 사양은 괄호 안에 포함된 여러 서식 사양 항목 목록으로 구성됩니다.

참조: Directory

참조: From

from_field from_field는 이전에 로드한 필드에서 데이터를 로드해야 하는 경우에 사용됩니다.

fieldassource::=(tablename, fieldname)

이 필드는 이전에 로드한 tablenamefieldname의 이름입니다.

format-spec ::= ( fspec-item {, fspec-item } )

서식 사양은 괄호 안에 포함된 여러 서식 사양 항목 목록으로 구성됩니다.

inline inline은 데이터를 스크립트 내에 입력해야 하고 파일에서 로드되지 않도록 해야 하는 경우에 사용됩니다.

data ::= [ text ]

inline 절을 통해 입력된 데이터는 큰따옴표 또는 대괄호로 묶어야 합니다. 그 사이에 입력되는 텍스트는 파일의 내용과 동일한 방식으로 해석됩니다. 그러므로 텍스트 파일에 새 줄을 삽입하는 경우 inline 절의 텍스트에도 스크립트를 입력하면서 Enter 키를 누르는 등의 방법으로 동일하게 새 줄을 삽입해야 합니다.

format-spec ::= ( fspec-item {, fspec-item } )

서식 사양은 괄호 안에 포함된 여러 서식 사양 항목 목록으로 구성됩니다.

resident resident는 이전에 로드한 테이블에서 데이터를 로드해야 하는 경우에 사용됩니다.

table label은 원래 테이블을 만든 LOAD 또는 SELECT 문 앞에 오는 레이블입니다. 이 레이블은 콜론으로 끝나야 합니다.

참조: 이전에 로드한 테이블에서 데이터 로드

참조: 테이블 레이블

autogenerate autogenerateQlikView에서 자동으로 데이터를 생성해야 하는 경우에 사용됩니다.

size ::= number

Number는 생성할 레코드의 수를 나타내는 정수입니다. 필드 목록은 데이터베이스에서 데이터를 요청하는 표현식을 포함해서는 안 됩니다. 표현식에서는 상수와 파라메타가 없는 함수(예: rand() 또는 recno())만 사용할 수 있습니다.

where where는 레코드를 선택에 포함할지를 나타내는 데 사용하는 절입니다. criterionTrue인 경우 선택 내용이 포함됩니다.

criterion은 논리 표현식입니다.

while

while은 레코드를 반복적으로 읽어야 할지 여부를 지정하는 데 사용되는 절입니다. criterionTrue이면 동일한 레코드를 읽습니다. while 절을 유용하게 사용하려면 일반적으로 IterNo( ) 함수를 포함해야 합니다.

criterion은 논리 표현식입니다.

group_by

group by는 데이터를 집계(그룹화)해야 하는 필드를 정의하는 데 사용되는 절입니다.집계 필드는 로드한 표현식에 어떤 방식으로든 포함되어야 합니다. 집계 필드 외의 필드는 로드한 표현식의 집계 함수 외부에서 사용할 수 없습니다.

groupbyfieldlist ::= (fieldname { ,fieldname } )

order_by order by는 상주 테이블의 레코드가 load 문에 의해 처리되기 전에 정렬하는 데 사용되는 절입니다. 상주 테이블은 하나 이상의 필드를 기준으로 오름차순 또는 내림차순으로 정렬할 수 있습니다. 기본적으로 숫자 값을 기준으로 정렬되며, 2차적으로 국가별 정렬 순서에 따라 정렬됩니다. 이 절은 데이터 소스가 상주 테이블인 경우에만 사용할 수 있습니다.

정렬 필드는 상주 테이블의 정렬 기준 필드를 지정합니다. 이 필드는 상주 테이블 내의 이름 또는 번호(첫 번째 필드는 1번)로 지정할 수 있습니다.

orderbyfieldlist ::= fieldname [ sortorder ] { , fieldname [ sortorder ] }

sortorderasc(오름차순) 또는 desc(내림차순)입니다. sortorder를 지정하지 않으면 asc가 사용됩니다.

fieldname, path, filenamealiasname은 각 이름의 의미를 나타내는 텍스트 문자열입니다. 소스 테이블의 모든 필드를 fieldname으로 사용할 수 있습니다. 그러나 as 절(aliasname)을 통해 만든 필드는 해당되지 않으며 같은 load 문에서 사용할 수 없습니다.

from, inline, resident, from_field 또는 autogenerate 절을 통해 지정된 데이터 소스가 없는 경우 데이터는 바로 다음에 나오는 SELECT 또는 LOAD 문의 결과에서 로드됩니다. 다음에 나오는 문에는 접두사가 없어야 합니다.

참조: 선행 LOAD

​예:  

참조 항목: