Quire의 모든 수식 연산자 및 함수 Permalink
이 가이드는 Quire 수식에서 지원하는 모든 연산자와 함수에 대한 완전한 참고 자료를 제공합니다. 명확한 설명과 실용적인 예시를 통해 강력한 계산, 조건, 업무 로직을 구성하는 데 도움이 됩니다.
숫자 연산자
숫자 연산자를 사용하면 숫자 기반 필드에 저장된 값을 계산할 수 있습니다.
| 연산자 | 기능 | 예시 |
|---|---|---|
| + | 값 더하기 | timeSpent + 100 |
| - | 값 빼기 | Cost - 100 |
| * | 값 곱하기 | Cost * 100 |
| / | 값 나누기 | Cost / 100 |
| % | 나머지 계산 | Cost % 3 |
| ^ | 거듭제곱 계산 | Cost ^ 3 |
참고: 수식에서 사용하기 전에 숫자형 사용자 지정 필드(예: Cost)를 먼저 만들어야 합니다.
텍스트 연산자
텍스트 연산자를 사용하면 여러 텍스트 문자열을 하나의 출력으로 병합하거나 연결할 수 있습니다.
| 연산자 | 기능 | 예시 |
|---|---|---|
| + | 텍스트 연결 | 'This is' + 'a task' |
비교 연산자
비교 연산자는 두 값의 관계에 따라 true 또는 false를 반환합니다.
| 연산자 | 의미 | 예시 |
|---|---|---|
| < | 미만 | 3 < 1 -> False |
| > | 초과 | 4 > 3 -> True |
| <= | 이하 | 4 <= 2 -> False |
| >= | 이상 | 5 >= 1 -> True |
| = | 같음 | 2 = 2 -> True |
| != | 같지 않음 | 3 != 2 -> True |
논리 연산자
not
true/false 결과를 반전시킵니다.
예시:
Not (Cost > 50)
Cost가 50을 초과하면 결과는 false입니다. 그 외의 경우에는 true를 반환합니다.
참고: 수식에서 사용하기 전에 숫자형 사용자 지정 필드(예: Cost)를 먼저 만들어야 합니다.
in
in을 사용하면 첫 번째 목록의 값이 두 번째 목록에 모두 포함되어 있는지 확인할 수 있습니다.
예시:
assignees in subtasks.assignees
업무의 모든 담당자가 해당 업무의 하위 업무에도 배정되어 있으면 true를 반환합니다.
&
두 목록 간의 공통 값을 찾아 반환합니다.
예시:
assignees & subtasks.assignees
업무와 하위 업무 양쪽에 공통으로 배정된 담당자를 반환합니다.
and
모든 조건을 평가하여 모든 조건이 충족될 때만 true를 반환합니다.
예시:
(Cost > 50) and (due > <today>)
참고: 수식에서 사용하기 전에 숫자형 사용자 지정 필드(예: Cost)를 먼저 만들어야 합니다.
or
각 조건을 확인하여 어느 하나라도 값이 있으면 true를 반환합니다.
예시:
Cost or Budget
참고: 수식에서 사용하기 전에 숫자형 사용자 지정 필드(예: Cost)를 먼저 만들어야 합니다.
목록 연산자
[field, field]
대괄호를 사용하여 여러 값을 하나의 목록으로 결합합니다.
예시:
[me, #23.assignees, subtasks.assignees]
나, ID#23인 업무에 배정된 담당자, 그리고 하위 업무의 모든 담당자를 목록으로 반환합니다.
Quire의 배열 수식을 통해 데이터 컬렉션을 나열하거나 계산하는 방법에 대해 더 자세히 알아보세요.
field[index]
인덱스로 목록 항목에 접근합니다(0부터 시작).
예시:
subtasks[3]
4번째 하위 업무를 반환합니다.
order by
지정한 필드를 기준으로 업무를 정렬합니다.
예시:
subtasks order by any.Cost
하위 업무 목록을 반환하며, 각 하위 업무의 Cost 필드 값을 기준으로 정렬합니다.
참고: 수식에서 사용하기 전에 숫자형 사용자 지정 필드(예: Cost)를 먼저 만들어야 합니다.
팁: 표현식 끝에 asc 또는 desc를 추가하여 정렬 방향을 지정할 수 있습니다. 예를 들어 subtasks order by any.Cost asc와 같이 입력합니다.
map
목록의 각 항목에 계산을 적용합니다.
예시:
subtasks map any.Cost * 2
하위 업무의 Cost 필드 값에 2를 곱한 목록을 반환합니다.
참고: 수식에서 사용하기 전에 숫자형 사용자 지정 필드(예: Cost)를 먼저 만들어야 합니다.
팁: map 연산자와 함께 any 식별자를 사용하여 계산할 필드를 지정할 수 있습니다.
조건 연산자
??
업무가 ?? 앞의 표현식에 해당하는지 확인하고 true/false 값을 반환합니다. 업무가 표현식과 일치하지 않으면 ?? 뒤에 있는 표현식의 값을 반환합니다.
예시:
(Cost > 10) ?? 'Reconsider'
Cost 필드의 값이 10을 초과하면 true를 반환합니다. 10 미만이면 false를 표시합니다. Cost에 값이 입력되지 않은 경우에는 “Reconsider”를 표시합니다.
참고: 수식에서 사용하기 전에 숫자형 사용자 지정 필드(예: Cost)를 먼저 만들어야 합니다.
?:
업무가 ? 앞의 표현식에 해당하는지 확인하고, 해당하면 ? 뒤의 표현식을 반환합니다. ? 앞의 표현식과 일치하지 않으면 : 뒤의 표현식을 반환합니다.
예시:
(Cost > 10) ? 'Too expensive': 'Reconsider'
Cost 필드의 값이 10을 초과하면 “Too expensive”를 표시합니다. 10 미만이거나 값이 없는 경우에는 “Reconsider”를 표시합니다.
참고: 수식에서 사용하기 전에 숫자형 사용자 지정 필드(예: Cost)를 먼저 만들어야 합니다.
결과 필터링 및 제한
where
특정 기준을 충족하는 업무를 필터링합니다.
예시:
subtasks where any.Cost > 10
Cost 값이 10을 초과하는 하위 업무가 나열됩니다.
참고: 수식에서 사용하기 전에 숫자형 사용자 지정 필드(예: Cost)를 먼저 만들어야 합니다.
팁: where 연산자와 함께 any 식별자를 사용하여 필터링할 필드를 지정할 수 있습니다.
limit
정렬 후 반환되는 업무 수를 제한합니다.
예시:
subtasks order by desc any.timeSpent - any.estimated limit 3
예상 시간보다 소요 시간이 더 많은 상위 3개의 하위 업무를 나열합니다.
연산자 우선순위
경우에 따라 계산 순서가 수식의 반환 값에 영향을 줄 수 있습니다. 따라서 Quire에서 연산 순서를 이해하는 것이 중요합니다. 하나의 수식에서 여러 연산자를 결합하면, Quire는 아래 표에 표시된 순서대로 연산을 수행합니다. 수식에 동일한 우선순위를 가진 연산자가 있는 경우, Quire는 왼쪽에서 오른쪽으로 계산합니다.
| 연산자 | 설명 |
|---|---|
( ).[ ]( ) |
괄호 점 연산자 목록(배열) 함수 호출 |
+ - not |
단항 연산자 |
^ |
거듭제곱 |
* / % |
곱셈 및 나눗셈 |
+ - |
덧셈 및 뺄셈 |
< > <= >= in & |
비교 연산자 |
= != |
등치 연산자 |
not |
논리 not 연산자 |
and |
논리 and 연산자 |
or |
논리 or 연산자 |
?? |
조건 연산자 |
where |
필터 연산자 |
?: |
조건 연산자 |
모든 내장 함수
| 함수 | 설명 | 예시 | 예상 결과 |
|---|---|---|---|
| SUM() | 값의 합계를 반환합니다. | SUM(subtasks.estimated) |
업무의 하위 업무에 있는 예상치 필드의 모든 값을 더합니다. |
| MAX() | 값 집합에서 가장 큰 값을 반환합니다. | MAX(subtasks.estimated) |
업무의 하위 업무에 있는 예상치 필드에서 가장 큰 값을 표시합니다. |
| MIN() | 값 집합에서 가장 작은 값을 반환합니다. | MIN(subtasks.estimated) |
업무의 하위 업무에 있는 예상치 필드에서 가장 작은 값을 표시합니다. |
| AVG() | 숫자의 평균값을 반환합니다. | AVG(subtasks.estimated) |
업무의 하위 업무에 있는 예상치 필드의 평균을 계산합니다. |
| COUNT() | 항목 수를 반환합니다. | COUNT(subtasks) |
하위 업무의 총 개수를 표시합니다. |
| SORT() | 인수의 정렬된 순서를 반환합니다. | SORT(subtasks.estimated) |
업무의 하위 업무에 있는 예상치 필드의 모든 값을 정렬된 순서로 표시합니다. |
| DISTINCT() | 중복 값을 제거하고 고유한 값만 반환합니다. | DISTINCT(subtasks.estimated) |
업무의 하위 업무에 있는 예상치 필드에서 중복을 제거한 고유 값만 표시합니다. |
| ISEMPTY() | 입력 인수가 비어 있는지 확인하고 true/false 값을 반환합니다. | ISEMPTY(estimated) |
업무의 예상치 필드가 비어 있으면 체크된 체크박스를 표시합니다. |
| ISNOTEMPTY() | 입력 인수가 비어 있는지 확인하고 true/false 값을 반환합니다. | ISNOTEMPTY(estimated) |
업무의 예상치 필드가 비어 있지 않으면 체크된 체크박스를 표시합니다. |
자주 묻는 질문
Quire 수식에서 어떤 산술 연산자를 사용할 수 있습니까?
Quire는 +, -, *, /, %(나머지), ^(거듭제곱)을 지원합니다. 수식에서 참조하기 전에 숫자형 사용자 지정 필드를 먼저 만들어야 합니다.
Quire 수식에서 어떤 내장 함수를 사용할 수 있습니까?
Quire는 SUM(), MAX(), MIN(), AVG(), COUNT(), SORT(), DISTINCT(), ISEMPTY(), ISNOTEMPTY()를 제공합니다. 전체 참고 자료는 모든 내장 함수를 확인하세요.
Quire 수식에서 연산자 우선순위는 어떻게 작동합니까?
Quire는 다음 순서로 연산자를 계산합니다. 괄호 및 점/목록 연산자가 가장 먼저 처리되고, 이후 거듭제곱, 곱셈/나눗셈, 덧셈/뺄셈, 비교, 논리, 마지막으로 조건 연산자 순으로 처리됩니다. 기본 순서를 바꾸려면 괄호를 사용하세요.
Quire에서 IF/조건 수식을 어떻게 작성합니까?
두 가지 결과가 있는 조건에는 ?:를 사용하세요. (Cost > 10) ? 'Too expensive' : 'Reconsider'. 필드가 비어 있을 때만 대체값이 필요하다면 ??를 사용하세요.
Quire 수식에서 필드 값으로 하위 업무를 어떻게 필터링합니까?
where 연산자를 사용하세요. subtasks where any.Cost > 10은 Cost가 10을 초과하는 하위 업무를 반환합니다. limit와 조합하여 결과 수를 제한할 수 있습니다.
Quire 수식에서 목록을 어떻게 정렬합니까?
order by를 사용하세요. subtasks order by any.Cost는 Cost 필드 기준으로 정렬합니다. 끝에 asc 또는 desc를 추가하여 방향을 지정할 수 있습니다.
Quire에서 목록의 각 항목에 계산을 어떻게 적용합니까?
map 연산자를 사용하세요. subtasks map any.Cost * 2는 각 하위 업무의 Cost 값에 2를 곱합니다.