sql语句取两个字段和的中值怎么写
时间: 2024-04-10 20:15:18 浏览: 130
SQL基础语句汇总.doc
如果您已经对表中两个字段求和,并且想要计算这两个字段和的中值,则可以使用以下 SQL 语句:
SELECT AVG(total_sum) AS median
FROM
(
SELECT (@row_num:=@row_num+1) AS `row_number`, total_sum
FROM
(
SELECT (@sum1 + @sum2) as total_sum
FROM your_table, (SELECT @sum1:=0, @sum2:=0) AS vars
) AS t1, (SELECT @row_num:=0) AS t2
ORDER BY total_sum
) AS t
WHERE row_number IN (FLOOR((@row_count+1)/2), CEIL((@row_count+1)/2));
其中,`your_table` 是您要计算的表的名称,`@sum1` 和 `@sum2` 是要相加的两个字段。中值将被存储在名为 `median` 的临时列中。这个 SQL 语句的原理是使用子查询计算总和,并按照总和排序。然后用 `@row_num` 跟踪排序后的行数,并使用 `FLOOR` 和 `CEIL` 函数选择中间两行的数据,从而得到中值。
阅读全文