PantherFlow 데이터 유형

이 데이터 유형들은 PantherFlow 쿼리 문에서 지원됩니다

PantherFlow는 Panther 버전 1.110부터 오픈 베타로 제공되며, 모든 고객이 사용할 수 있습니다. 버그 보고 및 기능 요청이 있으면 Panther 지원팀에 공유해 주세요.

정수

정수는 허용됩니다. 예를 들면:

  • 1

  • -2

실수

실수는 허용됩니다. 예를 들면:

  • 1.01

  • -6.6

문자열

작은따옴표 또는 큰따옴표로 묶인 문자열은 허용됩니다. 예를 들면:

  • 'foo'

  • "foo"

유니코드 문자는 문자열에 직접 포함할 수 있습니다. 예를 들면:

  • 'Panther is my favorite animal 🐱'

서로 다른 유형의 따옴표는 이스케이프되지 않습니다. 예를 들면:

  • 'foo and "bar"'foo and "bar"

  • "foo and 'bar'"foo and 'bar'

같은 유형의 따옴표는 백슬래시 문자로 이스케이프됩니다. 예를 들면:

  • 'foo and \'bar\''foo and 'bar'

  • "foo and \"bar\""foo and "bar"

백슬래시 문자는 이스케이프해야 합니다. 예를 들면:

  • "foo\\bar"foo\bar

다른 이스케이프도 지원됩니다:

이스케이프
설명
예시

\'

'

\"

"

\\

\

\b

백스페이스 문자

\f

폼피드 문자

\n

줄 바꿈 문자

\r

캐리지 리턴 문자

\t

탭 문자

\ooo

8진수

\377

\xhh

16진수

\xF0\x9F\x98\x8E

\uhhhh

유니코드

\u5b89

부울

일반적인 불리언 값은 허용됩니다:truefalse.

타임스탬프

타임스탬프는 time.parse_timestamp() 함수를 사용해 표시해야 하며, 이 함수는 문자열을 타임스탬프로 변환합니다. 예를 들면:

  • time.parse_timestamp('2023-06-01 13:14:15.00Z')

타임스탬프는 서로 비교할 수 있습니다. 예를 들어, 다음 식은 현재 날짜와 시간이 다음보다 이후이면 true로 평가됩니다 2024-12-11 09:46:22.00Z:

  • time.now() > time.parse_timestamp('2024-12-11 10:42:32.00Z')

기간

기간은 숫자와 단위로 구성되어야 합니다. time.parse_timespan() 함수는 이 형식의 문자열을 기간으로 변환합니다. 예를 들면:

  • time.parse_timespan('1d')

  • 1d

  • 1.5s

여러 단위가 지원됩니다:

단위
시간 길이

마이크로초

마이크로초

ms

밀리초

s

m

h

d

기간은 타임스탬프와 산술적으로 사용할 수 있습니다. 예를 들면:

  • time.now() - 1d

    • 이 식은 하루 전의 타임스탬프로 평가됩니다

  • p_event_time > time.ago(1d)

    • 이 식은 다음 경우 true로 평가됩니다 p_event_time 하루 전보다 더 최근인 경우

객체

객체는 중괄호로 표현할 수 있습니다 {'key': value} 또는 다음에 값을 전달하여 object() 함수로 만들 수 있습니다. 키는 문자열이어야 하며, 값은 어떤 유형이든 될 수 있습니다(스칼라, 배열, 객체 포함).

예를 들면:

  • {'key1': 'foo', 'key2': 1}

  • object('key1', 'foo', 'key2', 1)

객체 필드는 점 표기법 또는 대괄호를 사용해 접근할 수 있습니다. 예를 들면:

  • obj.key1

  • obj['key1']

객체에 없는 키의 값은 null:

  • obj['missing key'] == null

키를 null로 설정하면 객체에서 제거됩니다:

  • obj['delete me'] = null

배열

배열은 대괄호로 표현할 수 있습니다 [A, B], 또는 다음에 값을 전달하여 array() 함수로 만들 수 있습니다. 배열의 요소는 어떤 유형이든 될 수 있으며(스칼라, 배열, 객체 포함), 하나의 배열에 서로 다른 유형의 값이 함께 들어갈 수 있습니다. 예를 들면:

  • ['apple', 'orange', 'banana']

  • array('apple', 12, 'orange')

  • ['one', 1, {'flavor': 'chocolate', 'texture': 'melted'}]

배열의 요소는 대괄호로 접근할 수 있습니다:

  • arr[1]

배열은 다음으로 요소 포함 여부를 확인할 수 있습니다 not in에 보존됩니다. 예:

  • 'foo' in myarray

  • 'foo' not in myarray

테이블

테이블 이름은 대소문자를 구분하지 않습니다. 즉, 예를 들어 tableName 은 다음과 같습니다 Tablename.

열 이름은 대소문자를 구분합니다. 즉, 예를 들어 columnName 은 다음과 다릅니다 ColumnName.

Null은 다음으로 표시됩니다 null.

마지막 업데이트

도움이 되었나요?