GreenPlum--增、删、改

插入新记录

1、需要表名和该表每列的值使用INSERT命令插入数据
INSERT INTO tb_cp_02 VALUES (1,‘2013-12-31’,9.99);
2、显式的指定列名插入数据
INSERT INTO tb_cp_02(data,id,amt) VALUES (‘2013-12-31’,2,9.99);
3、从另一个表中获取并插入到当前表
INSERT INTO tb_cp_02 SELECT * FROM tb_cp_02 WHERE date < ‘2013-12-31’;
4、使用一个命令插入多条记录
INSERT INTO tb_cp_02(data,id,amt) VALUES (‘2013-12-31’,3,9.99),(‘2013-12-31’,4,9.99),(‘2013-12-31’,5,9.99)

AO表为批量装载做了优化,不建议在AO表上使用单条的INSERT语句。–适用外部表加载或者copy的方式。

更新记录

1、更新是对数据库的现有数据进行修改,可修改全部或部分记录
2、每个列都可以被单独的更新,而不影响其他列
3、要执行更新,需要如下3方面的消息:
1)要被更新的表和列
2)列的新值
3)需要被更新的列必须匹配的条件
4、使用UPDATE命令更新表中的记录,例如:
UPDATE tb_cp_02 SET amt=11.99 WHEHE id=3;
5、GP中使用UPDATE的限制:
GP的DK不可以被UPDATE

删除记录

1、使用DELETE 命令从指定的表中删除符合WHERE 条件的记录,例如:
DELETE FROM tb_cp_02 WHERE id=1;
或者删除表中所有记录:
DELETE FROM tb_cp_02 ;
2、使用TRUNCATE 命令快速删除所有记录:
TRUNCATE tb_cp_02
注:TRUNCATE不会扫描表的数据,不能回滚。
Oracle中delete不会回收,不会降低水位线,而truncate会。
GP会将要清除的数据放到临时的空间中–delete,truncate不会。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章