当前位置:首页 » 编程语言 » sql组内运算技巧
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql组内运算技巧

发布时间: 2022-03-13 23:07:34

1. sql server分组运算问题

SELECT *,FLOOR(DalWithSpeed / ServiceType) as A,FLOOR(ServiceAttitude / ServiceType)as B,(DalWithSpeed + ServiceAttitude )as C
FROM (
select语句
)as Z
把你上面语句放到select 语句那里

2. sql语句 如何分组后得到记录总数

SELECT COUNT(*)

FROM (SELECT 分组字段 FROM 表

GROUP BY 分组字段

)别名


或者

SELECT COUNT(*)

FROM (SELECT distinct 分组字段 FROM 表)别名

(2)sql组内运算技巧扩展阅读:

SQL分组查询

在SQL Server中使用的分组查询是ORDER BY子句,使用ORDER BY子句要同聚合函数配合使用才能完成分组查询,在SELECT查询的字段中如果字段没有使用聚合函数就必须出现在ORDER BY子句中(即SELECT后边的字段名要么出现在聚合函数中,要么在ORDER BY子句中使用)

在分组查询中还可以配合使用HAVING子句,定义查询条件。

使用group by进行分组查询

在使用group by关键字时,在select列表中可以指定的项目是有限制的,select语句中仅许以下几项:

1、被分组的列

2、为每个分组返回一个值得表达式,例如用一个列名作为参数的聚合函数

3、group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函数的列,必须出现在 group by 后面

3. sql分组运算,对结果作运算

selecdept'部门',sum(a)a1,sum(b)b1,sum(c)c1,sum(d)d1,
1.0*sum(a)/sum(d)per
fromstugroupbydept

per就是比例了,不过是小数,如果你要整数的用这个

selecdept'部门',sum(a)a1,sum(b)b1,sum(c)c1,sum(d)d1,
cast(1.0*sum(a)/sum(d)*100asint)per
fromstugroupbydept

4. SQL如何对分组后运算出来的结果进行排序

提供两种方案,第一种是降序
select sno,avg(grade) 'nihao' from sc
group by sno order by 'nihao' desc
第二种是升序
select sno,avg(grade) 'nihao' from sc
group by sno order by 'nihao' asc

其中‘nihao’表示avg(grade)这个列的别名