php - 列 取决于其他列

标签 php mysql sql

我创建了一个名为“members”的 mysql 表,其中 payment 和 ewallet 是两列...我想创建 ewallet 列,以便在付款更新时它会自动更新...规则将是ewallet=0.75* payment。怎么可能?

还有另一列“enroller_id”,我通过它使用 php 函数计算左计数和右计数下线

function getTotalLeg($node,$leg){
$sql="select enrolled_id from members where enroller_id='$node' and tside='$leg' and active='1'";

$res=mysql_query($sql);

global $total;

$total=$total+mysql_num_rows($res);
$row=mysql_fetch_array($res);

 if($row['enrolled_id']!=''){
   getTotalLeg ($row['enrolled_id'],0);
   getTotalLeg ($row['enrolled_id'],1);
  }

return $total;
}

可以在数据库中统计吗?请详细帮助我。提前致谢。

最佳答案

您可以使用generated columns (MySQL 5.7.6+):

Values of a generated column are computed from an expression included in the column definition.

Generated column definitions have this syntax:

col_name data_type [GENERATED ALWAYS] AS (expression) [VIRTUAL | STORED] [UNIQUE [KEY]] [COMMENT comment] [[NOT] NULL] [[PRIMARY] KEY]

CREATE TABLE members(
   ...,
   ewallet DECIMAL(14,4) AS (0.75 * payment)
);

关于php - 列 取决于其他列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35681048/

相关文章:

php - Android - Kotlin : Sending a non empty jsonObject but receiving an empty one

php - AJAX/PHP/MySQL/HTML 根据生成的变量和表格中的显示单元格搜索 MySQL

php - Symfony 2.8 和 PHP 7.4 : Warning: "continue" targeting switch is equivalent to "break". Composer 是最新版本

php - Doctrine DBAL - SELECT 连接两个表,在结果的键中带有前缀

mysql - 无法连接到MySQL服务器错误111

python - Pandas /Python/Dropna : Renaming header column names after a dropna takes place with intention to import to MySQL

java - 如何从 Spring Data 存储库调用 MySQL 函数

mysql - 内连接3个表以获得权限

SQL Server : Optional variable in a stored procedure

mysql - 带有左连接的一个查询中的多个计数 - 按什么分组?