You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为缺失'Started'状态的项目批量插入指定数据?

批量插入缺失的项目'Started'状态记录

核心思路

通过左连接+空值筛选定位所有未记录'Started'状态的项目,再用INSERT...SELECT语法直接批量插入指定状态记录,完全无需手动复制ProjectID。

步骤1:验证缺失状态的项目(可选)

先执行这条查询,确认哪些项目需要补充状态记录:

SELECT p.ProjectID
FROM Projects p
LEFT JOIN ProjectStatus ps 
  ON p.ProjectID = ps.ProjectID 
  AND ps.Status = 'Started'
WHERE ps.ProjectID IS NULL;

这条语句会返回所有无'Started'状态记录的项目ID(比如你案例中的Project B和Project C)。

步骤2:批量插入缺失记录

直接运行下面的SQL,一次性完成所有缺失项目的状态插入:

INSERT INTO ProjectStatus (ProjectID, Status, StatusDate)
SELECT p.ProjectID, 'Started', '2000-01-01'
FROM Projects p
LEFT JOIN ProjectStatus ps 
  ON p.ProjectID = ps.ProjectID 
  AND ps.Status = 'Started'
WHERE ps.ProjectID IS NULL;

注意事项

  • 日期格式:不同数据库的日期解析规则有差异,比如Oracle需用TO_DATE('2000-01-01', 'YYYY-MM-DD'),SQL Server也支持'20000101'无分隔符格式,根据你使用的数据库调整即可。
  • 执行前建议先备份数据,或用步骤1的查询确认结果,避免误操作。

内容的提问来源于stack exchange,提问作者Andrew C

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 22:58:12