sql - 如何在查询脚本中同时使用 DELETE 和 INSERT
问题描述
我正在使用 Google BigQuery(使用标准 SQL),但我有一个包含一些数据的表。根据表中的数据,我想向该表中插入假消息行,然后从该表中删除所有数据(新插入的假消息),但我确实担心删除该表中的所有数据。有关如何正确查询此类内容的任何示例?
解决方案
如果您担心意外删除数据,我会创建一个将您的实际数据与假数据结合起来的视图。
CREATE VIEW project.dataset.my_view
AS
select message from project.dataset.actual_table
UNION ALL
select 'This is a fake message 1' as message
UNION ALL
select 'This is a fake message 2' as message
您可以在不更改基础数据的情况下查询此视图,完成后,只需删除该视图。如果您不清楚自己在做什么,这比玩弄重要数据要安全得多。
推荐阅读
- ruby - 如何将 json 主体从 ruby 传递到 bash 脚本
- ionic3 - Ionic 3:错误消息:“预期的类型来自属性 'message',它在类型 'ToastOptions' 上声明”
- rxjs - 在可观察序列中交替
- firebase - Firebase ML Kit 使用什么协议?
- sql - 从列中的值不为空的 self 表更新表
- azure - 使用 Azure 应用服务(Web 应用)诊断日志创建应用程序日志不会触发 blob 创建事件
- python-2.7 - Python 多个维恩图堆叠在一张图像中
- algorithm - 将组的偏好与单个结果匹配的算法?
- apache - HTTPS 安全性受到 http: *.abc.com 的威胁
- xamarin - 在内容页面中添加新工具栏图标时出现投射异常