mysql - 如何在 MySQL 中创建计算列?

标签 mysql calculated-columns

我正在从事体育簿记项目,并希望创建一个计算字段。有四个值得关注的值: 风险:冒了多少风险 odds:浮点值(例如 2.5) 结果:'W'、'L'、'D' 表示获胜、失败或平局 返回:计算字段

返回值可以如下确定:

if (result == 'W'){
    $returned = $risked*odds
}
else if ($result == 'L') {
    $returned = $risked*-1
}
else {
    $returned = 0
}

但我不知道如何创建该计算列。

最佳答案

假设您有一个名为 tablename 的表,其中包含名为 riskedoddsresult 的字段,其中查询时,您将选择 3 个字段加上计算出的字段,称为返回:

SELECT 
    result,
    risked,
    odds, 
    CASE result
        WHEN 'W' then risked*odds
        WHEN 'L' then risked*-1
        ELSE 0
        END as returned
FROM tablename;

它本身不是列,但您可以使用此选择创建一个 View

关于mysql - 如何在 MySQL 中创建计算列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25374312/

相关文章:

php - 如何更改我的 phpmyadmin 密码?

mysql - 是否可以从 phpmyadmin 3.4.10.1 中运行存储过程?

php - 如何使用数据库数据在AngularJS中创建图表?

mysql - 如何为 MySQL 中的每一行分配不同的值?

php - foreach 循环中的复选框值获取不起作用

java - 匈牙利算法死胡同

sql - 如何以最佳方式对过去一年中的月份列进行求和?

php - 如果列中的所有行都为 true,则返回 true

sql - 如何从同一个表中的不同字段计算表中的数字?

c# - DataTable 动态计算列