可以使用INSERT INTO SELECT语句来实现这个需求。具体的执行语句如下:

INSERT INTO DM_M_YX_YSHHD1 (prov_id, prov_desc, liantong_num, xushang_num, qita_num, hujiao_x, hujiao_wn, hujiao_wj, hujiao_yd, hujiao_dx, number_11, number_gh_11, number_gh_12, number_sx_8, number_96_95, number_95_dx, number_95_qy, number_95_sf, number_952, number_96_sj, number_123, number_lt_kf, number_100_106, number_400_n, month_id)
SELECT '-', '全国', SUM(liantong_num), SUM(xushang_num), SUM(qita_num), SUM(hujiao_x), SUM(hujiao_wn), SUM(hujiao_wj), SUM(hujiao_yd), SUM(hujiao_dx), SUM(number_11), SUM(number_gh_11), SUM(number_gh_12), SUM(number_sx_8), SUM(number_96_95), SUM(number_95_dx), SUM(number_95_qy), SUM(number_95_sf), SUM(number_952), SUM(number_96_sj), SUM(number_123), SUM(number_lt_kf), SUM(number_100_106), SUM(number_400_n), month_id
FROM DM_M_YX_YSHHD1
WHERE prov_desc <> '全国';

这个语句将会在DM_M_YX_YSHHD1表中插入一行prov_desc为'全国'的数据,其中prov_id字段的值为'-',而month_id字段的值保持不变。其他字段的值为之前所有字段对应值的总和。同时,通过WHERE子句排除掉之前已经存在prov_desc为'全国'的行,以防止重复插入。

Hive SQL 插入汇总数据:将所有数据汇总插入prov_desc为'全国'的行

原文地址: http://www.cveoy.top/t/topic/qgmB 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录