内层对象定义之特殊数据类型
Array
DROP TABLE IF EXISTS test_table_datatype_array;
CREATE TABLE test_table_datatype_array
(ids array<INT>
)
LOCATION 'test/test_table_datatype_array';SELECTnames,names[1]`array`(names[2],names[3])names[5],names[-1],array_contains(names,'e'),array_contains(names,'b')
FROM
(select `array`('a',3,'b','c',4) names
) t;
Map
selectkv,kv["c"],kv["e"],array_contains(map_keys(kv),"g"),array_contains(map_keys(kv),"c")
from
(select `map`("a","b","c","d","e","f") kv
)
Struct
selectobj,obj.name
from
(select named_struct('name','zhangsan','age',30,'id',1001) obj
) t
mysql中的数据是写在磁盘中的
当修改数据时,会写到内存中,操作系统会周期性的写到磁盘,
但 不安全,所以会再写在binlog(顺写 json)文件中,备份一下,再写到datafile(随机写入)中