【问题标题】:SQL Server insert into next columnSQL Server 插入下一列
【发布时间】:2018-05-10 06:09:41
【问题描述】:

SQL Server 2012:是否可以在 select 语句中插入数据,但如果前一列已填充,则将数据插入下一列?

我有一个包含许多列来存储日期的表,我想从另一个表中获取数据并插入到下一个可用的空日期列中。

【问题讨论】:

  • 你为什么需要这些东西...???
  • 您可能想要更新,而不是插入。样本数据最好使用DDL + DML。请edit您的问题包括它,您当前的尝试和您想要的结果。

标签: sql sql-server-2012 sql-insert


【解决方案1】:

如果您说上一列已经填充,那么您确实在寻找某种更新。试试这个:

UPDATE yourTable
SET
    col1 = CASE WHEN col1 IS NULL THEN 'value' ELSE col1 END,
    col2 = CASE WHEN col1 IS NOT NULL THEN 'value' ELSE col2 END;

这里的逻辑就是你所描述的,即我们尝试用一些值更新col1。如果该列为空,我们会进行更新,否则我们会更新 col2

【讨论】:

    猜你喜欢
    • 2017-05-20
    • 2011-06-18
    • 2021-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多