恢复某个条件的单元格值

时间:2015-12-17 12:14:53

标签: mysql

DB中的字段获得/将更新为某个值时,是否可以恢复单元格的默认值?

伪代码:

Update mytable Set Status equal to Default 
   if QCField to be updated has
      value='A' or 'B' and and also update QCField to 'A'

此处StatusQCField是表格中的字段。

编辑:默认值不是null,而是一些文字。

2 个答案:

答案 0 :(得分:1)

这是我最后一次编辑此答案,因为您不断更改问题。从其他答案的评论:

  

我想仅在QCField的值为A或B时才更新状态,但是   无论如何,QCField必须得到更新 - Suhail Gupta

您必须执行两个更新语句:

  • QCField更新为A,将状态值更新为{some 1}}为A或B的“some text”
  • QCField更新为A,其中QCField当前不是A或B
QCField

或者,您可以执行一个触及每一行的更新语句:

  • UPDATE mytable SET Status = 'Some text', QCField = 'A' WHERE QCField IN ('A', 'B'); UPDATE mytable SET QCField = 'A' WHERE QCField NOT IN ('A', 'B'); 更新为A
  • 如果QCField是A或B,则将状态更新为“某些文字”,否则将其保留为当前值。
QCField

答案 1 :(得分:1)

如果要设置列的默认值,则必须使用.tooltip-title { max-width: 200px; padding: 3px 8px; color: red; font-weight: bold; text-align: center; background-color: #000; border-radius: 4px; } 作为值。请尝试以下查询:

DEFAULT

您可以在此处找到一个工作示例:http://sqlfiddle.com/#!9/f02423/1/0

来自MySQL文档:

  

每个值都可以作为表达式给出,或者使用关键字DEFAULT将列明确设置为其默认值。   http://dev.mysql.com/doc/refman/5.1/en/update.html