Update和Select结合统计更新
Update和Select结合统计更新
update table_a set updatetime=getdate(), name=b.name
from (select name,age from table_b where table_b.Id=1) as b
where table_a.id=1
--
UPDATE A SET A1 = B1, A2 = B2, A3 = B3 FROM A, B WHERE A.ID = B.ID
update Table_Main set DataStatusId='902e0650-4fd2-432b-ad56-0750ba81f71e',
MonthClassHourSum=tmain.MonthClassHourSum,FTCNClassHourSum=tmain.FTCNClassHourSum,PTCNClassHourSum=tmain.PTCNClassHourSum,
FTENClassHourSum=tmain.FTENClassHourSum,PTENClassHourSum=tmain.PTENClassHourSum,
StaffClassHourSum=tmain.StaffClassHourSum, TakeClassHourSum=tmain.TakeClassHourSum,
TeachingTotalSum=tmain.TeachingTotalSum, TeachingClassSum=tmain.TeachingClassSum,
TeachingStudentSum=tmain.TeachingStudentSum, StudentLearnAge=tmain.StudentLearnAge,
TeachingPercent=tmain.TeachingPercent,TotalAttendStudentCnt=tmain.TeachingStudentSum, TotalClassTeacherCount=tmain.TotalClassTeacherCount,
TotalTeacherCount=tmain.TotalTeacherCount, GroupTeachItemCourse=tmain.GroupTeachItemCourse
from
(select sum(TeacherClassHour)as 'MonthClassHourSum',
sum(Case when TeacherTypeId='t1' then TeacherClassHour else 0 end) as 'FTCNClassHourSum',
sum(Case when TeacherTypeId='t2' then TeacherClassHour else 0 end) as 'PTCNClassHourSum',
sum(Case when TeacherTypeId='t3' then TeacherClassHour else 0 end) as 'FTENClassHourSum',
sum(Case when TeacherTypeId='t4' then TeacherClassHour else 0 end) as 'PTENClassHourSum',
sum(Case when TeacherTypeId='t5' then TeacherClassHour else 0 end) as 'StaffClassHourSum',
sum(Case when TeacherTypeId='t6' then TeacherClassHour else 0 end) as 'TakeClassHourSum',
COUNT(DISTINCT Id) as 'TeachingTotalSum',COUNT(DISTINCT TeachItemClassId) as 'TeachingClassSum',sum(AttendStudentCnt) as 'TeachingStudentSum',
Convert(decimal(18,2),sum(TeacherClassHour)/COUNT(DISTINCT TeacherUserID)) as 'StudentLearnAge',
100*Convert(decimal(18,2),COUNT(DISTINCT TeacherUserID)/(select count(DISTINCT IdCard) from Table_User)) as 'TeachingPercent',
COUNT(DISTINCT TeacherUserID) as 'TotalClassTeacherCount',(select count(DISTINCT IdCard) from Table_User) as 'TotalTeacherCount',
(select count(DISTINCT Id) from [dbo].[Table_Group] where FKMainId=@mainId) as 'GroupTeachItemCourse'
from [dbo].[Table_Detail] where FKTMainId=@mainId
) tmain
where Tabel_Main.Id=@mainId
SQL
Update和Select结合统计更新的更多相关文章
- [转]oracle update set select from 关联更新
本文转自:http://blog.csdn.net/disiwei1012/article/details/52589181 http://www.blogjava.net/Jhonney/archi ...
- oracle update set select from 关联更新
工作中有个需求,现在新表中有一些数据跟老表的基本一样,这样只需要把老表中数据搬到新表中就可以了,同时把不同的字段修改下数据即可,在修改字段时发现,需要指定一个条件,比如主键id,来修改某条记录,这样一 ...
- oracle学习笔记:update一整列 关联更新
普通的 update 都是根据条件来对部分列的内容进行修改,用法如下: update temp_cwh_table set name = 'xxx' where id = 1; 假设现在有2张表:A. ...
- Oracle update和select 关联
Oracle update和select 关联 目录 Oracle update和select 关联 1.介绍 2.解决方法 2.1.需求 2.2.错误演示 2.3.解决方法 1.介绍 本文主要向大家 ...
- select for update和select for update wait和select for update nowait的区别
CREATE TABLE "TEST6" ( "ID" ), "NAME" ), "AGE" ,), "SEX ...
- select * from salgrade for update和select * from salgrade for update nowait区别
1,select * from salgrade for update session1 session2 SQL> delete salgrade where grade=1; 1 row d ...
- JavaScript 实现textarea限制输入字数, 输入框字数实时统计更新,输入框实时字数计算移动端bug解决
textarea称文本域,又称文本区,即有滚动条的多行文本输入控件,在网页的提交表单中经常用到.与单行文本框text控件不同,它不能通过maxlength属性来限制字数,为此必须寻求其他方法来加以限制 ...
- 浅谈select for update 和select lock in share mode的区别
有些情况下为了保证数据逻辑的一致性,需要对SELECT的操作加锁.InnoDB存储引擎对于SELECT语句支持两种一致性的锁定读(locking read)操作. . SELECT …… FOR UP ...
- 2nd 词频统计更新
词频统计更新 实现功能:从控制台输入文件路径,并统计单词总数及不重复的单词数,并输出所有单词词频,同时排序. 头文件 #include <stdio.h> #include <std ...
随机推荐
- [转帖]Dockerfile: ENTRYPOINT和CMD的区别
Dockerfile: ENTRYPOINT和CMD的区别 https://zhuanlan.zhihu.com/p/30555962 在我们查阅Dockerfile的官方文档时, 有可能发现一些命令 ...
- Apache Shiro初认识
Apache Shiro 一.Shiro介绍: Apache软件基金会专门针对系统中的登录.加密.权限认证.授权等等功能进行了封装,不仅仅适用于JavaWeb项目,CS架构的系统也可以使用Shiro. ...
- 网易自动化测试工具(airtest)的环境部署
airtest 环境配置: 1.安装Python2.7 及 Python3.6 版本(2个需要都安装) 2.配置python环境变量(AirtestIDE 需要在python2.x的环境下运行,所以尽 ...
- Python 在气象上的应用
Python 在气象上的应用 grug350关注 0.7892019.03.15 23:19:31字数 913阅读 1,024 为什么选择python 免费和开源,没有商业许可限制anaconda p ...
- hdu 2353 n皇后问题
Problem Description 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上.你的任务是,对于给定的N, ...
- VS.NET(C#)--2.9_HTML服务器控件案例
HTML服务区控件案例 UI设计视图 UI源码视图 <>
- 此方法显式使用的 CAS 策略已被 .NET Framework 弃用。若要出于兼容性原因而启用 CAS 策略,请使用 NetFx40_LegacySecurityPolicy 配置开关
使用DEV8.3winform控件,框架从.net2.0升级到4.0后,程序报错,调用的目标异常. 此方法显式使用的 CAS 策略已被 .NET Framework 弃用.若要出于兼容性原因而启用 C ...
- centos安装rocketMQ
1.下载安装包 http://rocketmq.apache.org/release_notes/ 这里选择 4.4.0 版本,点击进去 可以选择源码包或者二进制文件,这里选择二进制文件(ps:如果选 ...
- SMARTY的知识
smarty的原理: <?php class Smarty { $ldelimiter = "{";//左分隔符 $rdelimiter = "}";// ...
- pip3升级问题
输入命令sudo pip3 install --upgrade pip 升级完成之后执行pip命令会报错,错误信息如下: File "/usr/bin/pip3", line 9, ...