Apache Impala是一个基于Hadoop的分布式SQL查询引擎,它支持迭代函数用于对查询结果集进行迭代处理。以下是一个使用Apache Impala迭代函数的代码示例:
假设我们有一个包含学生成绩的表,包括学生姓名和成绩两列。我们想要计算每个学生的平均成绩,并将结果存储在新的表中。
首先,创建一个名为“students”的表,包含两列:name和score。
CREATE TABLE students (
name STRING,
score INT
);
然后,将数据插入到表中。
INSERT INTO students VALUES ('Alice', 80);
INSERT INTO students VALUES ('Bob', 75);
INSERT INTO students VALUES ('Charlie', 90);
接下来,创建一个新的表“student_avg_score”,包含两列:name和avg_score。
CREATE TABLE student_avg_score AS
SELECT name, AVG(score) AS avg_score
FROM students
GROUP BY name;
以上代码使用GROUP BY子句和AVG函数计算每个学生的平均成绩,并将结果存储在新的表中。
在这个例子中,AVG函数是一个迭代函数,用于对每个学生的成绩进行迭代计算平均值。