我的数据库包含以下关键列
我想要做的是使用提供的信息创建 2 个新列,其中包含基于其他 2 列的值。
1) 'win' 列 - 如果 'pos' = 1,则值为 (BSP - 1) - EG One for Billy 将读取 1.06,否则将读取“-1”
2) 'diditplace' 列 - 如果 'Placed' = 1,则值将为 (place - 1) - EG One for Billy 将读取 0.27,否则它将读取“-1”
最佳答案
试试这个:
UPDATE myTable
SET newColumn1 = CASE pos WHEN 1 THEN 'BSCP - 1' ELSE '-1' END,
newColumn2 = CASE placeId WHEN 1 THEN 'place - 1' ELSE '-1' END
如果您想添加新列,请在之前添加:
ALTER myTable
ADD COLUMN newColumn1 VARCHAR(256) NOT NULL,
ADD COLUMN newColumn2 VARCHAR(256) NOT NULL
将 newColumn1
和 newColumn2
替换为您所需的列名称。
关于mysql - SQL - 根据另一个列值设置列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51842262/