我正在创建带有查询的表。
示例(下面有基本查询):
CREATE TABLE teste AS
SELECT "John" as 'Name', "Dohn" as 'Surname', 18 as 'Age'
好的,我们将表创建为teste。
现在我将在1小时内运行此查询;
CREATE TABLE teste AS
SELECT "Selim" as 'Name', "Kenny" as 'Surname', 20 as 'Age'
但是它说“表已经存在”。
我想用覆盖的新行更新此表。
我不能用
如果表存在DROP TABLE
因为,在我的查询运行表被删除之前,如果有人想显示该表,则会产生错误。
我不想保留旧行数据,我想将新行数据覆盖为新行。
当新查询结果准备就绪后,请删除旧行并添加新行。
在寻找答案。
祝你有美好的一天!
编辑: 简单的例子:
此表列出了销售最畅销的10种产品,每1小时就会有一个查询。当查询结果准备就绪时,它会获得具有大量Joins,Subqueries等信息的十大畅销产品,然后将新的十大畅销产品覆盖为旧的十大畅销产品。我的意思是,这10个最畅销的产品表永远不能为空。 (就像先截掉一样)
答案 0 :(得分:0)
可以使用“截断表查询”代替使用删除表。 它将仅截断表,然后您可以添加新行。
答案 1 :(得分:0)
尝试一下
CREATE TABLE <table_name> IF NOT EXISTS
TRUNCATE TABLE <table_name>