SELECT paramname,'最大值' name ,d.MaxValue FROM Parameter d union all SELECT paramname,'最小值' name,d.minvalue FROM Parameter d union all SELECT paramname,'平均值' name,Round(d.total/(d.Nums*1.0),2) FROM Parameter d
IF (OBJECT_ID('Parameter') IS NOT NULL) DROP TABLE Parameter CREATE TABLE Parameter ( ID INT IDENTITY(1,1) PRIMARY KEY, ParamName VARCHAR(50), MaxValue float, --表名称 MinValue FLOAT, --真实字段名称 Nums INT, Total INT ) INSERT INTO Parameter SELECT 'param1',50,10,5,200 UNION ALL SELECT 'param2',60,20,6,300 SELECT * FROM ( SELECT paramname,'最大值' name ,d.MaxValue FROM Parameter d union all SELECT paramname,'最小值' name,d.minvalue FROM Parameter d union all SELECT paramname,'平均值' name,Round(d.total/(d.Nums*1.0),2) FROM Parameter d ) T ORDER BY PARAMNAME ,CASE NAME WHEN '最大值' THEN 1 WHEN '最小值' THEN 2 ELSE 3 END /* paramname name MaxValue -------------------------------------------------- ------ ---------------------- param1 最大值 50 param1 最小值 10 param1 平均值 40 param2 最大值 60 param2 最小值 20 param2 平均值 50 */
SELECT paramname,'最大值' name ,d.MaxValue FROM Parameter d union all
SELECT paramname,'最小值' name,d.minvalue FROM Parameter d union all
SELECT paramname,'平均值' name,Round(d.total/(d.Nums*1.0),2) FROM Parameter d
DROP TABLE Parameter
CREATE TABLE Parameter
(
ID INT IDENTITY(1,1) PRIMARY KEY,
ParamName VARCHAR(50),
MaxValue float, --表名称
MinValue FLOAT, --真实字段名称
Nums INT,
Total INT
)
INSERT INTO Parameter
SELECT 'param1',50,10,5,200 UNION ALL
SELECT 'param2',60,20,6,300
SELECT * FROM (
SELECT paramname,'最大值' name ,d.MaxValue FROM Parameter d union all
SELECT paramname,'最小值' name,d.minvalue FROM Parameter d union all
SELECT paramname,'平均值' name,Round(d.total/(d.Nums*1.0),2) FROM Parameter d
) T
ORDER BY PARAMNAME
,CASE NAME WHEN '最大值' THEN 1 WHEN '最小值' THEN 2 ELSE 3 END
/*
paramname name MaxValue
-------------------------------------------------- ------ ----------------------
param1 最大值 50
param1 最小值 10
param1 平均值 40
param2 最大值 60
param2 最小值 20
param2 平均值 50
*/