导入数据时,存在时更新,不存在时插入

01 CREATE trigger tr_bank3 ON bank3
02 AFTER INSERT
03 AS
04   
05   
06     Update bank1 set bank1.fmoney=bank1.fmoney+c.a 
07       From 
08         (select fid,sum(case when TYPE=0 then fmoney when type=1 then -fmoney endas From bank3 group by Fid) C 
09     where 
10         C.FID=bank1.FID 
11         AND EXISTS(SELECT FROM INSERTED WHERE Fid=bank3.Fid))
12   
13     insert into bank1 
14     select 
15         fid,
16         sum(case when TYPE=0 then fmoney   when type=1 then -fmoney endas 
17     from 
18         bank3 AS a
19     WHERE 
20         EXISTS(SELECT FROM INSERTED WHERE Fid=a.Fid)
21     AND 
22         NOT EXISTS(SELECT FROM bank1 WHERE Fid=a.Fid)
23     group by Fid
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Hive中,可以使用多种方式向表中插入数据。一种常见的方式是使用INSERT INTO语句,将数据直接插入到已存在的表中。例如,可以使用以下语法将数据插入到表中: INSERT INTO 表名 VALUES (值1, 值2, ...); 另一种方式是使用LOAD DATA语句,将数据从外部文件加载到表中。可以使用以下语法将数据加载到表中: LOAD DATA LOCAL INPATH '文件路径' OVERWRITE INTO TABLE 表名; 其中,'文件路径'是指外部文件的路径,可以是本地文件系统或HDFS上的文件路径。 还有一种方式是创建外部表,使用CREATE EXTERNAL TABLE语句创建表,并指定外部数据的位置。然后可以使用LOAD DATA语句将数据加载到外部表中。这种方式可以将数据存储在外部位置,而不是Hive默认的仓库位置。例如: CREATE EXTERNAL TABLE 表名 (字段1 数据类型, 字段2 数据类型) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION '外部数据路径'; 其中,'外部数据路径'是指外部数据存储的位置。 需要注意的是,根据具体的需求和数据来源,选择合适的方式来插入数据到Hive表中。 #### 引用[.reference_title] - *1* *2* *3* [Hive 创建表、导入数据插入数据操作](https://blog.csdn.net/louzhu_lz/article/details/90046028)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值