【问题标题】:SQL if column1 matches column2 add 1 to column3SQL 如果 column1 与 column2 匹配,则将 1 添加到 column3
【发布时间】:2015-12-01 16:38:36
【问题描述】:

我目前正在研究 SQL。

如果 column1 中的数据与 column2 匹配,则 1 应在 column3 中添加索引。

例如

  1. column1column2
  2. B7 A8
  3. A8 Q9
  4. L1 X2

所以它必须搜索两列并在第三列中加 1

【问题讨论】:

    标签: sql if-statement indexing compare


    【解决方案1】:
    UPDATE YourTable
        SET column3 = COALESCE(column3, 0) + 1
        WHERE column1 = column2;
    

    【讨论】:

      【解决方案2】:

      如果您只是尝试运行一个查询,它将类似于以下内容:

      SELECT column1, column2, CASE WHEN column1 = column2 THEN 1 ELSE 0 END column3 FROM tbl
      

      如果您正在尝试实际更新表格,那么您将执行以下操作:

      UPDATE tbl SET column3 = CASE WHEN column1 = column2 THEN 1 ELSE 0 END
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-01-30
        相关资源
        最近更新 更多