数据库传输服务
类型 | 描述 | 示例值 |
类型 | 描述 | 示例值 |
int | 整型,表示没有小数部分的数值,可以是正数、负数或零。 | 123 |
float | 浮点型,表示有小数部分的数值。 | 3.14 |
string | 字符串。 | "abc" |
char | 字符型,表示单个字符。 | #a |
bool | 布尔型,表示真或假的值。 | true 或 false |
bytes | 表示以 0B 开头的 16 进制串。 | 0B37 |
symbol | 表示无引号包含的字符串。 | abc |
time | 表示时间类型。 | (time/parse-beijing "2015-02-23 23:54:55") |
类型 | 表达式 | 说明 |
类型 | 表达式 | 说明 |
数组 | [参数1 参数2 参数3 ...] | 数组以方括号包裹的一串元素。例如:
|
哈希 | {key1 value1 key2 value2} | 哈希是以花括号包裹的一串元素。奇数位元素为 key,紧随其后的偶数位元素为 value。例如: {"a" 1 "b" 2 } 表示 key1 为 a,value1 为 1;key2 为 b,value2 为 2。 |
函数调用 | (function-name 参数1 参数2 参数3 ...) | 函数调用是括号包括的一串元素。例如: (+ 1 2) |
Quoting | '(参数1 参数2 参数3 ...) | 使用单引号 ' 将列表标记为数据,表示一串数据列表,而不是函数调用。例如: '(1 2 3) |
函数定义 | (defn 函数名 [参数1 参数2 ...] 函数体) | 使用 defn 定义一个函数。例如定义一个计算平方的函数: (defn square [x] (* x x)) |
变量绑定 | (let [变量1 值1 变量2 值2 ...] 使用变量的表达式) | 使用关键字 let 做变量绑定。例如打印变量 a、b 的值: (let [a 100 b 200] (println a b)) 返回 100 200。 |
功能 | 语法 | 取值范围 | 返回值 |
功能 | 语法 | 取值范围 | 返回值 |
加法 | (+ value1 value2 ) | value1 和 value2 的取值范围包含整数或浮点数。 | 当参数都为整数时,则返回整数,否则返回浮点数。 |
减法 | (- value1 value2) | value1 和 value2 的取值范围包含整数或浮点数。 | 当参数都为整数时,则返回整数,否则返回浮点数。 |
乘法 | (* value1 value2) | value1 和 value2 的取值范围包含整数或浮点数。 | 当参数都为整数时,则返回整数,否则返回浮点数。 |
除法 | (/ value1 value2) | value1 和 value2 的取值范围包含整数或浮点数。 | 当参数都为整数时,则返回整数,否则返回浮点数。 |
取模 | (mod value1 value2) | value1 和 value2 的取值范围包含整数或浮点数。 | 当参数都为整数时,则返回整数,否则返回浮点数。 |
功能 | 语法 | 取值范围 | 返回值 |
功能 | 语法 | 取值范围 | 返回值 |
大于 | (> value1 value2) | value1 和 value2 的取值范围包含整数、浮点数或字符串。 | true 或 false |
小于 | (< value1 value2) | value1 和 value2 的取值范围包含整数、浮点数或字符串。 | true 或 false |
等于 | (= value1 value2) | value1 和 value2 的取值范围包含整数、浮点数或字符串。 | true 或 false |
大于等于 | (>= value1 value2) | value1 和 value2 的取值范围包含整数、浮点数或字符串。 | true 或 false |
小于等于 | (<= value1 value2) | value1 和 value2 的取值范围包含整数、浮点数或字符串。 | true 或 false |
不等于 | (!= value1 value2) | value1 和 value2 的取值范围包含整数、浮点数或字符串。 | true 或 false |
功能 | 语法 | 取值范围 | 返回值 |
功能 | 语法 | 取值范围 | 返回值 |
OR运算 | (or true false true) |
| true 或 false。例如: (or (> 1 2) (> 3 2)) 返回 true。 |
AND 运算 | (and true false true) |
| true 或 false。例如: (and (> 2 1) (> 3 2)) 返回 true。 |
NOT 运算 | (not true) |
| true 或 false。例如:
|
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
获取字符串中某个索引位置的字符 | (sget "字符串" 索引位置) | 返回索引位置的字符。例如: (sget "abcd" 2) 返回 #c。 |
向字符串追加字符。 | (append "字符串" #追加字符) | 返回添加后的字符串。例如: (append "ab" #c) 返回 abc。 |
返回字符串的子串 | (slice 字符串 from to) | 返回一个包含从 from 到 to(不包含 to)的子字符串的字符串。例如: (slice "abcd" 1 3) 返回 bc。 |
字符串间的格式转换 |
| 字符串转换成 int 或 float 格式。例如:
|
功能 | 语法 | 说明 |
功能 | 语法 | 说明 |
cond 语句 | (cond first-condition first-expression second-condition second-expression ... default-expression) | cond 类似于通用语言中的 Switch 语句,但 cond 必须包含 default 分支。例如: (cond (> age 50) (println "五十而知天命") (> age 40) (println "四十不惑") (> age 30) (println "三十而立") (println "年轻人")) 当 age 是 20 时,则返回年轻人。 |
if 或 when 语句 |
(if condition expression)
(when condition expression) | if 和 when 的语法表达式具有相同含义,满足条件时则执行某些操作。例如: (if (> 2 1) (println "OK")) 返回 ok。 |
unless语句 | (unless condition expression) | 和 if 相反,不满足条件的则执行操作。例如: (unless false (println "OK")) 返回 ok。 |
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
创建指定长度的数组,或创建指定长度的数组并以指定值初始化 |
| 返回指定长度的数组,或指定长度的数组并以指定值初始化。例如:
|
按数组索引访问数组 | (aget 数组 索引) | 返回索引所在的数组。例如: (aget [1 2 3] 1) 返回 2。 |
设置数组元素值 | (aset! 数组 索引 值) | 替换索引位置的值。例如: (aset! [0 1 2] 1 3) 返回 [0 3 2]。 |
判断数组内是否包含某个元素 | (exist? 数组 元素) | 返回值为 true 或 false。判断数组内是否包含某个元素。例如: (exist? ["a" "b"] "a") 返回 true。 |
获取数组的子数组 | (slice 数组 from to) | 返回字符串的子数组,返回值为 [from to)。例如: (slice [1 2 3 4] 1 3) 返回 [2 3]。 |
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
访问 hash 元素 |
| 返回访问 hash 元素。例如:
说明 默认值 defalut 支持自定义。 |
设置 hash 元素 | (def h {"key1" value1}) (hset! h "key1" 参数1) | 返回成功设置后的 hash 元素。例如 (def h {"a" 3}) (hset! h "a" 2) 返回 {"a" 2}。 |
删除 hash 元素 | (def h {"key1" value1 "key2" value2}) (hdel! h "key") | 返回删除后的 hash 元素。例如: (def h {"a" 3 "b" 2}) (hdel! h "a") 返回 {"b" 2}。 |
探测 hash 是否包含 key | (exist? {"参数1" "参数2"} "参数1") | 返回值如下:
示例如下: (exist? {"a" "b"} "a") 返回 true。 |
功能 | 语法 | 说明 |
功能 | 语法 | 说明 |
在字符串或数组后添加元素 |
| 返回一个新的数组或字符串。例如:
|
连接多个数组或字符串 |
| 返回一个新的数组或字符串。例如:
|
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
将字节流转换为字符串 | (string 字节流) | 返回一个字符串。例如: (string 0B68656c6c6f) 返回 hello。 |
将字符串转换为字节流 | (bytes "字符串") | 返回一个字节流。例如: (bytes "abc") 返回 0B616263。 |
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
将函数应用到列表或数组内每一个元素 | (map 函数 数组) | 返回数组中每个元素被应用指定函数的数组或列表。例如:
返回一个新的数组 [4 5 6]。
返回一个新的数组 [1 2 3]。 |
使用指定的函数过滤数组 | (filter 函数 数组) | 当过滤函数返回 true 时则保留元素,否则将丢弃。例如: (defn even? [a] (= 0 (mod a 2))) (filter even? [1 2 3 4]) 返回结果为 [2 4]。 |
对数组或列表进行聚合操作 | (foldl 函数 初始值 数组) | 返回数组或列表的聚合结果。例如:
返回结果为 24。 |
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
零值判断 | zero? | 当目标参数为 0、0.0 时,则返回 true,否则返回 false。 |
NULL 判断 | null? | 当目标参数为 () 时,则返回 true,否则返回 false。 |
空判断 | empty? | 当目标参数为 ()、[]、"" 或 {} 时,则返回 true,否则返回 false。 |
是否为 List | list? | 当目标参数是列表时,则返回 true,否则返回 false。 |
是否为数组 | array? | 当目标参数的数据类型是 array 时,则返回 true,否则返回 false。 |
是否为数字 | number? | 当目标参数的数据类型是 int、char 或 float 时,则返回 true,否则返回 false。 |
是否为整数 | int? | 当目标参数的数据类型是 integer 时,则返回 true,否则返回 false。 |
是否为浮点数 | float? | 当目标参数的数据类型是 float 时,则返回 true,否则返回 false。 |
是否为字符 | char? | 当目标参数的数据类型是 char 时,则返回 true,否则返回 false。 |
是否为字符串 | string? | 当目标参数的数据类型是 string 时,则返回 true,否则返回 false。 |
是否为符号 | symbol? | 当目标参数的数据类型是 symbol 时,则返回 true,否则返回 false。 |
是否为哈希值 | hash? | 当目标参数的数据类型是 hash 时,则返回 true,否则返回 false。 |
是否为字节流 | bytes? | 当目标参数的数据类型是 bytes 时,则返回 true,否则返回 false。 |
是否返回指定数据类型 | type | 当返回的目标参数的数据类型是 symbol、string、array、bool、char、float、function、hash、int、list 或 bytes 时,则返回 true,否则返回 false。 |
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
代数左移 | (sla 操作的数据 移动位数) | 返回代数左移后的结果。例如: (sla 1 3) 返回 8。 |
代数右移 | (sra 操作的数据 移动位数) | 返回代数右移后的结果。例如: (sra 1 1) 返回 0。 |
8bit 逻辑左移 | (sll8 操作的数据 移动位数) | 返回 8bit 逻辑左移后的结果。例如:
返回 2。
返回 254。 |
16bit 逻辑左移 | (sll16 操作的数据 移动位数) | 返回 16bit 逻辑左移后的结果。例如:
返回 2。
返回 65534。 |
32bit 逻辑左移 | (sll32 操作的数据 移动位数) | 返回 32bit 逻辑左移后的结果。例如:
|
64bit 逻辑左移 | (sll64 操作的数据 移动位数) | 返回 64bit 逻辑左移的结果。例如:
返回 2。
返回 18446744073709551614。 |
8bit 逻辑右移 | (srl8 操作的数据 移动位数) | 返回 8bit 逻辑右移的结果。例如:
|
16bit 逻辑右移 | (srl16 操作的数据 移动位数) | 返回 16bit 逻辑右移的结果。
|
32bit 逻辑右移 | (srl32 操作的数据 移动位数) | 返回 32bit 逻辑右移的结果。例如:
|
64bit 逻辑右移 | (srl64 操作的数据 移动位数) | 返回 64bit 逻辑右移的结果。例如:
|
bit 与 | (bit-and 操作的数据 移动位数) | 返回 bit 与的结果。例如: (bit-and 3 2) 返回 2。 |
bit 或 | (bit-or 操作的数据 移动位数) | 返回 bit 或的结果。例如: (bit-or 3 1) 返回 3。 |
bit 异或 | (bit-xor 操作的数据 移动位数) | 返回 bit 异或的结果。例如: (bit-xor 3 1) 返回 2。 |
bit 取非 | (bit-not 操作的数据 移动位数) | 返回 bit 取非的结果。例如: (bit-not 2) 返回 -3。 |
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
返回当前时间 | (time/now) | 返回当前时间。例如: (time/now) 返回结果为当前的时间点。 |
格式化时间 | (time/format 时间 转换目标) | 支持将时间转换为 unix 时间戳,单位为秒或毫秒,也支持将时间按指定格式转换为字符串。例如:
|
时间解析 | (time/parse 解析目标) | 返回时间解析结果。例如:
|
北京时间解析 | time/parse-beijing | (time/parse-beijing "2015-02-23 23:54:55") |
时间计算 | (time/add-date 时间 n年 n月 n日) | 返回计算后的时间。例如: (time/add-date (time/now) 1 2 3) 返回在当前时间的基础上,年份加 1 年、月份加 2 个月、日加 3 天。 |
| (time/add 时间 n 年或 n 月或 n 日或 n 小时或 n 分钟或 n 秒) | 返回计算后的时间。例如:
|
| (time/sub time1 time2) | 返回 time1 和 time2 的时间差值,单位为秒。 |
返回年份 | (time/year 时间) | 返回时间的年份。例如: (time/year (time/now)) 返回当前时间的年份。 |
返回月份 | (time/month 时间) | 返回时间的月份。例如: (time/month (time/now)) 返回当前时间的月份。 |
返回日 | (time/day 时间) | 返回时间的日。例如: (time/day (time/now)) 返回当前时间的日。 |
返回小时 | (time/hour 时间) | 返回时间的小时。例如: (time/hour (time/now)) 返回当前时间的小时。 |
返回分钟 | (time/minute 时间) | 返回时间的分钟。例如: (time/minute (time/now)) 返回当前时间的分钟。 |
返回秒数 | (time/second 时间) | 返回时间的秒数。例如: (time/second (time/now)) 返回当前时间的秒数。 |
返回星期数 | (time/weekday 时间) | 返回时间的星期数。例如: (time/weekday (time/now)) 返回当前时间的星期数。 |
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
验证是否包含字符串 | (str/contains? "字符串" "字符") | 返回值如下:
例如: (str/contains? "abc" "b") 返回 true。 |
查询子字符串的数量 | (str/count "字符串" "子字符串") | 返回在字符串内包含多少个子字符串。例如: (str/count "abcc" "c") 返回 2。 |
验证字符串是否以某个子串为前缀 | (str/start-with? "字符串" "字符") | 返回值如下:
例如: (str/start-with? "abc" "a") 返回 true。 |
验证字符串是否以某个子串为后缀 | (str/end-with? "字符串" "字符") | 返回值如下:
例如: (str/end-with? "abc" "c") 返回 true。 |
返回某个目标字符在字符内第一次出现时的下标 | (str/index "字符串" "目标字符") | 返回该字符在字符串的下标。例如: (str/index "abc" "b") 返回 1。 |
验证字符串是否都是字母 | (str/alpha? "字符串") | 返回值如下:
例如: (str/alpha? "ab1") 返回 false。 |
验证字符串是否都是数字 | (str/digit? "字符串") | 返回值如下:
例如: (str/digit? "ab1") 返回 false。 |
拼接字符串 | (str/join ["字符串1" "字符串2"] "拼接符") | 返回字符串的拼接结果,支持任意拼接符拼接字符串。例如: (str/join ["a" "b"] "_") 返回 "a_b"。 |
将字符串内的大写字母转换为小写字母 | (str/lower "字符串") | 返回转换为小写字母的字符串。例如: (str/lower "ABC") 返回 "abc"。 |
将字符串内的小写字母转换为大写字母 | (str/upper "字符串") | 返回转换为大写字母的字符串。例如: (str/upper "abc") 返回 "ABC"。 |
替换字符串内的子串 | (str/replace "字符串" "字符串的子串" "目标子串") | 返回替换后的字符串。例如: (str/replace "abc" "b" "B") 返回 "aBc"。 |
分割字符串 | (str/split "字符串1 拼接符 字符串2" "拼接符") | 返回分割后的数组,需指定字符串间的拼接符分割字符串,字符串支持任意拼接符拼接。例如: (str/split "a_b" "_") 返回 ["a" "b"]。 |
将字符串的首字母转换为大写字母 | (str/title "字符串") | 返回转换后的字符串。例如: (str/title "abc") 返回 "Abc"。 |
验证字符串的首字母是否为大写字母 | (str/title? "字符串") | 返回值如下:
例如: (str/title? "abc") 返回 false。 |
删除字符串前缀 | (str/trim-prefix "字符串" "前缀") | 返回删除了前缀的字符串。例如: (str/trim-prefix "_abc" "_") 返回 "abc"。 |
删除字符串后缀 | (str/trim-suffix "字符串" "后缀") | 返回删除了后缀的字符串。例如: (str/trim-suffix "abc_" "_") 返回 "abc"。 |
删除字符串的前后空格 | (str/trim-space " 字符串 ") | 返回删除了前后空格后的字符串。例如: (str/trim-space " abc ") 返回 "abc"。 |
计算字符串的 MD5 值 | (str/md5 "字符串") | 返回字符串的 MD5 值。例如; (str/md5 "abc") 返回 "900150983cd24fb0d6963f7d28e17f72"。 |
脱敏字符串的敏感信息 | (str/mask "字符串" 开始索引 结束索引 "*") | 返回脱敏后的字符串,支持任意字符进行脱敏。例如;
|
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
设置函数别名 | (alias 别名 原名) | 为原函数设置别名。例如: 本示例表示为加法运算设置别名 plus。 (alias plus +) 当使用加法运算时,您可以通过以下语法进行加法运算: (plus 1 2) 返回 3。 |
打印函数 |
| 输出函数。例如:
说明 默认使用 %v 当作占位符
|
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
将 JSON 对象转换为字符串 | (json/stringify {"key1" value1 "key2" value2 "key3" value3}) | 返回成功转换后的字符串。例如: (json/stringify {"a" 1 "b" '() "c" true}) 返回 {"a":1,"b":null,"c":true}。 |
将字符串转换为 JSON 对象 | (json/parse "{"key1" : value1, "key2" : value2, "key3" : value3}") | 返回成功转换后的 JSON 对象。例如: (json/parse "{"a":1,"b":null,"c":true}") 返回 {"a" 1 "b" () "c" true}。 |
DTS ETL 语法构件 | JSON |
DTS ETL 语法构件 | JSON |
integer | integer |
float | float |
string | string |
symbol | string |
() | null |
array | array |
bytes | base64 encoded string |
list | array |
hash | object |
bool | bool |
char | Integer value of char |
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
将 Base64 编码的字符串转换为字节流 | (base64/decode "Base64") | 返回转换成功的字节流。例如: (base64/decode "aGVsbG8=") 返回 "0B68656c6c6f"。 |
将字节流转换为 Base64 编码 | (base64/encode 字节流) | 返回转换成功的 Base64。例如: (base64/encode 0B68656c6c6f) 返回 "aGVsbG8="。 |
功能 | 语法 | 返回值 |
功能 | 语法 | 返回值 |
删除当前记录 | (dts/drop) | 删除当前数据行,无返回结果。 |
查询当前记录是否已被丢弃 | (dts/dropped?) | 返回类型为 bool。 |
返回当前记录的数据库的名称 | (dts/db) | 返回类型为 string。 |
返回当前记录的表格的名称 | (dts/table) | 返回类型为 string。 |
返回当前记录的事件类型 | (dts/event) | 返回类型为 string。支持以下事件类型:
|
返回当前记录的 DML 类型 | (dts/dml) | 返回类型为 string。支持以下 DML 类型:
|
设置 Tag | (dts/set-tag) | 无返回类型。 |
查询记录的某列是否为 null | (dts/column-null? COLUMN) | 返回类型为 bool。 |
查询记录的某列是否存在 | (dts/column-exist? COLUMN) | 返回类型为 bool。 |
验证当前事件是否是 DDL 事件 | (dts/ddl?) | 返回类型为 bool。 |
验证当前事件是否是 DML 事件 | (dts/dml?) | 返回类型为 bool。 |
验证当前事件是否是 DML UPDATE | (dts/update?) | 返回类型为 bool。 |
验证当前事件是否是 DML DELETE | (dts/delete?) | 返回类型为 bool。 |
验证当前事件是否是 DML INSERT | (dts/insert?) | 返回类型为 bool。 |
返回记录的某个字段值 | (dts/column COLUMN DEFAULT) | 返回的字段类型支持 string、int、bool 或 float 等。 说明 当该列不存在或为空时,则给定默认值 DEFAULT。 |
返回当前记录所有字段名 | (dts/columns) | 返回类型为字符串数组。 |
设置字段值 | (dts/set-column COLUMN VALUE) | 无返回类型。 |
使用指定函数对某列值做变换 | (dts/map-column COLUMN FUNCTION) | 无返回类型。 |
重命名字段 |
| 无返回类型。 |
过滤某列 | (dts/drop-column COLUMN) | 无返回类型。 |
设置指定列为主键,尤其在异构表同步场景下修改主键列 | (dts/use-index "column1" "column2") | 无返回类型。 |
(语法糖)对某个表执行某些操作 | (dts/match-table TABLE EXPRESSIONS) | 无返回类型。 |
(语法糖)如果是对表的 INSERT 操作则执行某些操作 | (dts/match-insert-on-table TABLE EXPRESSIONS) | 无返回类型。 |
(语法糖)如果是对表的 UPDATE 操作则执行某些操作 | (dts/match-update-on-table TABLE EXPRESSIONS) | 无返回类型。 |
(语法糖)如果是对表的 DELETE 操作则执行某些操作 | (dts/match-delete-on-table TABLE EXPRESSIONS) | 无返回类型。 |
(语法糖)如果是 DML 事件执行某些操作 | (dts/match-dml-on-table TABLE EXPRESSIONS) | 无返回类型。 |
(语法糖)正则匹配某个表(不带库名匹配)并执行某些操作 | (dts/match-table-regexp TABLE EXPRESSIONS) | 无返回类型。 |
(语法糖)正则匹配某个表(带库名匹配)并执行某些操作 | (dts/match-db-table-regexp DBTABLE EXPRESIONS) | 无返回类型。 |
MySQL 字段类型 | 示例 | DSL 字段类型 | 示例 |
MySQL 字段类型 | 示例 | DSL 字段类型 | 示例 |
bit | b'111' | bytes | 0B07 |
tinyint | 3 | int | 3 |
bool | true | bool | true |
smallint | 3 | int | 3 |
mediumint | 3 | int | 3 |
int | 3 | int | 3 |
integer | 3 | int | 3 |
bigint | 3 | int | 3 |
bigint unsigned | 18446744073709551615 | int | 18446744073709551615 |
decimal | 333.333 | float | 333.333 |
dec | 333.333 | float | 333.333 |
float | 1.1 | float | 1.1 |
double | 1.1 | float | 1.1 |
date | '2001-01-01' | string | "2001-01-01" |
datetime | '2001-01-01 01:01:01' | string | "2001-01-01 01:01:01" |
timestamp | '2001-01-01 01:01:01' | time | (time/parse "2001-01-01 01:01:01") |
time | '01:01:01' | string | "01:01:01" |
year | 2001 | int | 2001 |
char | 'abc' | string | "abc" |
varchar | 'abc' | string | "abc" |
binary | 'abc' | bytes | 0B616263 |
varbinary | 'abc' | bytes | 0B616263 |
tinyblob | 'abc' | bytes | 0B616263 |
tinytext | 'abc' | string | "abc" |
blob | 'abc' | bytes | 0B616263 |
text | 'abc' | string | "abc" |
mediumblob | 'abc' | bytes | 0B616263 |
mediumtext | 'abc' | string | "abc" |
longblob | 'abc' | bytes | 0B616263 |
longtext | 'abc' | string | "abc" |
enum | 'a' | int | 1 |
set | 'a,b' | int | 3 |
geometry | GeomFromText('POINT(1 1)') | bytes | 0B000000000101000000000000000000f03f000000000000f03f |
point | GeomFromText('POINT(1 1)') | bytes | 0B000000000101000000000000000000f03f000000000000f03f |
linestring | GeomFromText('LINESTRING(0 0,1 1,2 2)') | bytes | 0B000000000101000000000000000000f03f000000000000f03f |
polygon | GeomFromText('POLYGON((0 0,10 0,10 10,0 10,0 0),(5 5,7 5,7 7,5 7, 5 5))') | bytes | 0B000000000101000000000000000000f03f000000000000f03f |
multipoint | GeomFromText('MULTIPOINT(1 1,2 2)') | bytes | 0B000000000101000000000000000000f03f000000000000f03f |
multilinestring | GeomFromText('MULTILINESTRING((0 0,1 1,2 2),(0 0,2 2,4 4))') | bytes | 0B000000000101000000000000000000f03f000000000000f03f |
multipolygon | GeomFromText(‘MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0)),((5 5,7 5,7 7,5 7, 5 5)))’) | bytes | 0B000000000101000000000000000000f03f000000000000f03f |
geometrycollection | GeomFromText('GEOMETRYCOLLECTION(POINT(2 1),LINESTRING(0 0,1 1,2 2,3 3,4 5))') | bytes | 0B000000000101000000000000000000f03f000000000000f03f |
json | '{"key":"value"}' | string | "{\"key\": \"value\"}" |