可以在mysql中引用一行本身吗?

时间:2012-03-27 17:53:13

标签: mysql subquery

mysql中的一行可以在子查询中引用自身吗?

test_table
id |  field 1  | field 2 | field 3
 1 |    25     |   10    | average of field 1 and 2

是否可以自己引用第3列?

感谢。

3 个答案:

答案 0 :(得分:1)

您可以将行3设置为等于任何点的第1列和第2列的平均值,但该值仅对该时间点的列值为真。

如果您正在寻找在更改其他列时自动更新列的Excel样式字段,那么您将需要使用trigger来更新第三列或第一列时第二个更新。

答案 1 :(得分:1)

如果您希望在select语句中返回值,请使用:

SELECT id, field1, field2,  (CAST((field1 + field2) as DECIMAL)/2) AS 'field 3' 
FROM tablename

将总和转换为十进制将防止失去平均值的精确度。

答案 2 :(得分:0)

对于这样的简单计算,你宁愿在php函数中引用它吗?将其存储在数据库中是不必要的空间利用。