MAP
MAP
函数用于创建一个键值对映射表,其中每个键都与一个值相对应。这种数据结构可以方便地存储和检索与特定键关联的数据。
语法
MAP <keyType, valueType> (key1, value1, key2, value2, ...)
参数
keyType
:键的类型,可以是任何基本数据类型,如整数、字符串等。
valueType
:值的类型,可以是任何基本数据类型,如整数、字符串等。
(key1, value1, key2, value2, ...)
:一个或多个键值对,用逗号分隔。
示例
1.将颜色名称映射到对应的数字:
CREATE TABLE MAP_TABLE(COL MAP<STRING,INT>);
SELECT MAP ('red', 1, 'green', 2);
+---------------------------+
| MAP('red', 1, 'green', 2) |
+---------------------------+
| {"red":1,"green":2} |
+---------------------------+
-
将员工姓名映射到对应的部门:
SELECT MAP ('Alice', 'HR', 'Bob', 'Sales', 'Charlie', 'IT');
+-----------------------------------------------------+
| MAP('Alice', 'HR', 'Bob', 'Sales', 'Charlie', 'IT') |
+-----------------------------------------------------+
| {"Alice":"HR","Bob":"Sales","Charlie":"IT"} |
+-----------------------------------------------------+
-
将考试成绩映射到对应的等级:
SELECT MAP (60, '及格', 80, '良好', 90, '优秀');
+-----------------------------------+
| MAP(60, '及格', 80, '良好', 90, '优秀') |
+-----------------------------------+
| {60:"及格",80:"良好",90:"优秀"} |
+-----------------------------------+