id: "dtcs:stdlib.functions"
version: "2.0.0"
governingSpecification: "2.0.0"
publicationStatus: "standard"
entries:
dtcs:lower:
name: "Lower"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["string"],"returnType":"string","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:upper:
name: "Upper"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["string"],"returnType":"string","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:concat:
name: "Concat"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":null,"argTypes":["string"],"returnType":"string","returnNullable":false,"deterministic":true,"nullBehavior":"propagate"}
dtcs:concat_ws:
name: "Concat With Separator"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":null,"argTypes":["string"],"returnType":"string","returnNullable":false,"deterministic":true,"nullBehavior":"defined"}
dtcs:substr:
name: "Substring"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":3,"argTypes":["string","integer"],"returnType":"string","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:replace:
name: "Replace"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":3,"maxArgs":3,"argTypes":["string"],"returnType":"string","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:coalesce:
name: "Coalesce"
category: "function"
version: "2.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":null,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":true,"nullBehavior":"defined","semantics":"firstPresent"}
dtcs:if_null:
name: "If Null"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":2,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":true,"nullBehavior":"defined"}
dtcs:null_if:
name: "Null If"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":2,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":true,"nullBehavior":"defined"}
dtcs:case_when:
name: "Case When"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":null,"argTypes":["boolean","string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":true,"nullBehavior":"defined"}
dtcs:try_cast:
name: "Try Cast"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":2,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"sameAsTarget","returnNullable":true,"deterministic":true,"nullBehavior":"defined"}
dtcs:is_invalid:
name: "Is Invalid"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"boolean","returnNullable":false,"deterministic":true,"nullBehavior":"defined"}
dtcs:length:
name: "Length"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["string","binary"],"returnType":"integer","returnNullable":false,"deterministic":true,"nullBehavior":"propagate"}
dtcs:to_string:
name: "To String"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"string","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:to_integer:
name: "To Integer"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["string","decimal","integer"],"returnType":"integer","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:to_decimal:
name: "To Decimal"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["string","decimal","integer"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:abs:
name: "Absolute"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["integer","decimal"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:round:
name: "Round"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":2,"argTypes":["decimal","integer"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:floor:
name: "Floor"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["decimal","integer"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:ceil:
name: "Ceil"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["decimal","integer"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:power:
name: "Power"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":2,"argTypes":["decimal","integer"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:sqrt:
name: "Square Root"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["decimal","integer"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:least:
name: "Least"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":null,"argTypes":["integer","decimal"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:greatest:
name: "Greatest"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":null,"argTypes":["integer","decimal"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:min:
name: "Min"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":null,"argTypes":["integer","decimal"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:max:
name: "Max"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":null,"argTypes":["integer","decimal"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:contains:
name: "Contains"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":2,"argTypes":["string"],"returnType":"boolean","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:starts_with:
name: "Starts With"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":2,"argTypes":["string"],"returnType":"boolean","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:ends_with:
name: "Ends With"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":2,"maxArgs":2,"argTypes":["string"],"returnType":"boolean","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:is_null:
name: "Is Null"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"boolean","returnNullable":false,"deterministic":true,"nullBehavior":"defined"}
dtcs:is_missing:
name: "Is Missing"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","minArgs":1,"maxArgs":1,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"boolean","returnNullable":false,"deterministic":true,"nullBehavior":"defined"}
dtcs:count_all:
name: "Count All"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"aggregate","minArgs":0,"maxArgs":0,"argTypes":[],"returnType":"integer","returnNullable":false,"deterministic":true,"nullBehavior":"defined"}
dtcs:count:
name: "Count"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"aggregate","minArgs":1,"maxArgs":1,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"integer","returnNullable":false,"deterministic":true,"nullBehavior":"defined"}
dtcs:count_distinct:
name: "Count Distinct"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"aggregate","minArgs":1,"maxArgs":1,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"integer","returnNullable":false,"deterministic":true,"nullBehavior":"defined"}
dtcs:sum:
name: "Sum"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"aggregate","minArgs":1,"maxArgs":1,"argTypes":["integer","decimal"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"defined"}
dtcs:average:
name: "Average"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"aggregate","minArgs":1,"maxArgs":1,"argTypes":["integer","decimal"],"returnType":"decimal","returnNullable":true,"deterministic":true,"nullBehavior":"defined"}
dtcs:current_date:
name: "Current Date"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"datetime","minArgs":0,"maxArgs":0,"argTypes":[],"returnType":"date","returnNullable":false,"deterministic":false,"nullBehavior":"defined","runStable":true,"referenceClock":"2026-01-01"}
dtcs:current_timestamp:
name: "Current Timestamp"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"datetime","minArgs":0,"maxArgs":0,"argTypes":[],"returnType":"datetime","returnNullable":false,"deterministic":false,"nullBehavior":"defined","runStable":true,"timezone":"fixedOffset","referenceClock":"2026-01-01T00:00:00Z"}
dtcs:date_add:
name: "Date Add"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"datetime","minArgs":2,"maxArgs":3,"argTypes":["date","datetime","integer","string"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":true,"nullBehavior":"propagate","units":["day","month","year","hour","minute"]}
dtcs:date_diff:
name: "Date Diff"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"datetime","minArgs":2,"maxArgs":3,"argTypes":["date","datetime","string"],"returnType":"integer","returnNullable":true,"deterministic":true,"nullBehavior":"propagate","units":["day","month","year","hour","minute"]}
dtcs:date_trunc:
name: "Date Trunc"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"datetime","minArgs":2,"maxArgs":2,"argTypes":["date","datetime","string"],"returnType":"datetime","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:extract:
name: "Extract"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"datetime","minArgs":2,"maxArgs":2,"argTypes":["string","date","datetime"],"returnType":"integer","returnNullable":true,"deterministic":true,"nullBehavior":"propagate"}
dtcs:date_part:
name: "Date Part"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"datetime","minArgs":2,"maxArgs":2,"argTypes":["string","date","datetime"],"returnType":"integer","returnNullable":true,"deterministic":true,"nullBehavior":"propagate","aliasOf":"dtcs:extract"}
dtcs:at_timezone:
name: "At Timezone"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"datetime","minArgs":2,"maxArgs":2,"argTypes":["datetime","string"],"returnType":"datetime","returnNullable":true,"deterministic":true,"nullBehavior":"propagate","timezone":"fixedOffset"}
dtcs:row_number:
name: "Row Number"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"window","minArgs":0,"maxArgs":0,"argTypes":[],"returnType":"integer","returnNullable":false,"deterministic":false,"nullBehavior":"defined","profile":"dtcs:profile/portable-window/1"}
dtcs:rank:
name: "Rank"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"window","minArgs":0,"maxArgs":0,"argTypes":[],"returnType":"integer","returnNullable":false,"deterministic":false,"nullBehavior":"defined","profile":"dtcs:profile/portable-window/1"}
dtcs:dense_rank:
name: "Dense Rank"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"window","minArgs":0,"maxArgs":0,"argTypes":[],"returnType":"integer","returnNullable":false,"deterministic":false,"nullBehavior":"defined","profile":"dtcs:profile/portable-window/1"}
dtcs:lag:
name: "Lag"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"window","minArgs":1,"maxArgs":3,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":false,"nullBehavior":"defined","profile":"dtcs:profile/portable-window/1"}
dtcs:lead:
name: "Lead"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"window","minArgs":1,"maxArgs":3,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":false,"nullBehavior":"defined","profile":"dtcs:profile/portable-window/1"}
dtcs:first_value:
name: "First Value"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"window","minArgs":1,"maxArgs":1,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":false,"nullBehavior":"defined","profile":"dtcs:profile/portable-window/1"}
dtcs:last_value:
name: "Last Value"
category: "function"
version: "1.0.0"
status: "standard"
definition: |
{"kind":"function","family":"window","minArgs":1,"maxArgs":1,"argTypes":["string","integer","decimal","boolean","date","time","datetime","duration","binary"],"returnType":"sameAsArgs","returnNullable":true,"deterministic":false,"nullBehavior":"defined","profile":"dtcs:profile/portable-window/1"}