-1

假设我有一个有 7 列的表:sun, mon, tue, 等等...

我有一行全为 0,我需要使用dayofWeek(now()).

sun=1如果函数返回 1、mon=1如果函数返回 2 等,我需要更新。

4

1 回答 1

2

您可以使用这样的查询:

UPDATE yourtable
SET
  sun=(dayofWeek(now()) = 1),
  mon=(dayofWeek(now()) = 2),
  tue=(dayofWeek(now()) = 3),
  ...
WHERE
  id=something

在此处查看小提琴。

如果你不想改变你的实际价值,你可以使用这样的东西:

UPDATE yourtable
SET
  sun=CASE WHEN dayofWeek(now()) = 1 THEN 1 ELSE sun END,
  mon=CASE WHEN dayofWeek(now()) = 2 THEN 1 ELSE mon END,
  tue=CASE WHEN dayofWeek(now()) = 3 THEN 1 ELSE tue END,
  ...
于 2013-06-20T15:24:34.667 回答