# Replace

Replace前缀 可添加至脚本中的任何 LOAD 或 SELECT 语句，以指定加载的表格应当替代另一表格。它还指定此语句应在部分重新加载中运行。Replace 前缀还可用在 Map 语句中。

语法：

Replace[only][Concatenate[(tablename)]] (loadstatement | selectstatement)

Replace[only]mapstatement

在正常（非部分）重载期间， ReplaceLOAD 构造将作为正常 LOAD 语句作用，但是会有前缀 DropTable。首先删除旧表，然后生成记录并作为新表存储。

如果使用了 Concatenate 前缀，或者存在具有相同字段集的表，则此项将为要放置的相关表。否则，就没有可放下的表，并且 ReplaceLOAD 构造将与普通 LOAD 相同。

部分重载的作用相同。唯一的区别是，上一个脚本执行中总是有一个表要删除。ReplaceLOAD 构造总是首先删除旧表，然后创建新表。

Replace Map...Using 语句在部分脚本执行期间也会导致映射发生。

参数：

Replace 参数

| 参数 | 说明 |
| --- | --- |
| only | 可选限定符表示应在正常（非部分）重新加载期间忽视语句。 |

示例和结果：

示例和结果

| 示例 | 结果 |
| --- | --- |
| `Tab1:`<br>`Replace<br>LOAD * from File1.csv;` | 在常规和部分重新加载期间，QlikView 表格 Tab1 起初会被删除。此后，将会从 File1.csv 加载新数据，并存储到 Tab1。 |
| `Tab1:`<br>`Replace<br>only LOAD * from File1.csv;` | 在常规重新加载期间，此语句会被忽略。<br><br>在部分重新加载期间，任意 QlikView 表格以前命名的 Tab1 起初会被删除。此后，将会从 File1.csv 加载新数据，并存储到 Tab1。 |
| `Tab1:`<br>`LOAD  a,b,c<br>from File1.csv;`<br>`Replace<br>LOAD  a,b,c from File2.csv;` | 在常规重新加载期间，文件 File1.csv 首先会读取至 QlikView 表格 Tab1，然后立即删除并由从 File2.csv 加载的新数据替换。来自 File1.csv 的全部数据会丢失。<br><br>在部分重新加载期间，整个 QlikView 表格 Tab1 起初会被删除。此后，使用从 File2.csv 加载的新数据进行替换。 |
| `Tab1:`<br>`LOAD a,b,c<br>from File1.csv;`<br>`Replace<br>only LOAD a,b,c from File2.csv;` | 常规重新加载期间，将会从 File1.csv 加载数据，并存储到 QlikView 表格 Tab1 中。File2.csv 会被忽略。<br><br>在部分重新加载期间，整个 QlikView 表格 Tab1 起初会被删除。此后，使用从 File2.csv 加载的新数据进行替换。来自 File1.csv 的全部数据会丢失。 |

## 了解详情

* [Load](https://help.qlik.com/zh-CN/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Load.htm)
* [Select](https://help.qlik.com/zh-CN/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Select.htm)
* [Map](https://help.qlik.com/zh-CN/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Map.htm)