2 a photo A_photo 于 2014.10.31 16:23 提问

Sql server 多表连接,数据横向汇总问题,新手求大神讲解。

表1字段是a,b,c、
表2字段是a,T1,T2,T3,T4,T5,T6,T7....T31,M1,M2,M3,M4,M5,M6,M7....M31, 其中 表2中的字段a关联表1的字段a, 循环表1然后根据关联将对应表1中a字段的2表数据横向聚合(T1...T31),(M1....M31),将聚合出来的(T1....T31)值赋值给1表的B字段,(M1....M31)的值赋值给表1的C字段

1个回答

ch21st
ch21st   2015.12.03 12:16
 UPDATE t1 SET
       t1.b=t2.T1+t2.T2.....+t2.T31,
       t1.c=t2.M1+t2.M2.....+t2.M31
FROM [表1] AS t1 inner JOIN [表2] as t1 on t1.a=t2.a
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
SQl Server 数据库多表连接
【缘由】      为了防止数据的冗余,我们会将数据库中表进行拆分,这样就产生了多张表,表与表之间通过主外键关联,但这样又造成了我们查找和修改的困难,如何进行多表之间的查找呢?      我们将一个查询同时设计两个或两个以上的表,称之为连接查询。连接查询是关系数据库中最主要的查询,主要包括内连接、左外连接、右外连接、全外连接等。接下来我们分别来论述每一种连接方式。       首先我有两张表
ORACLE中一个SQL语句实现横向汇总和纵向汇总(求每个学生的总成绩,每学科总成绩和全班总成绩)
 有一张表test 如下, (NO 学生编号 ,cj 成绩)NO name KM CJ001 张三 语文 80 001 张三 数学 86 001 张三 英语 75 002 李四 语文 78 002 李四 数学 85 002 李四 英语 78 写了以下语句来算每项个科目的总分,select decode(grouping(name),1,总分,name) 姓名, sum(decode
sql 横向求平均值(排除为0项)
表名tbl_avgrow 字段名分别是name,n1,n2,n3,n4 select A.*, (A.n1+A.n2+A.n3+A.n4)/B.count1,B.count1 as avgrow from tbl_avgrow as A left join  (--每行不为零的字段总数 select name ,A1+A2+A3+A4 as count1 from
16、SQL Server 汇总数据之聚合函数与分组 group by
汇总数据 主要用于对数据集的的数据进行汇总统计等操作,基本是聚合函数。 聚合的基本理念:不是返回所有指定的行,而是返回一行计算得到的值(前面指定的行 的某些数据的汇总)。它们汇总了原始数据集。 1、计算总数、平均值 2、统计分析 3、解决聚合问题 4、创建动态的交叉查询 一、简单聚合 在SQL查询的逻辑流程中,聚合函数是在From子句和Where子句之后执行的,这 意味着无须使
SQL Server数据库纵向转横向
<br />SQL Server数据库纵向转横向 关键字: sql server 2005 pivot unpivot<br />以一张薪资表为例,表结构如下:<br /> <br /> <br /><br />表结构中,每个员工id对应有多个薪资项目以及金额,需要查询时转向,将每个员工的薪资项目转为横向一行显示。<br />在直接查询(加入一些限制条件以缩小结果集),<br /> Sql代码 SELECT       ssp_pay_empid,      ssp_pay_sdate,      ssp
数据库SQL Server性能优化之垂直拆分和水平拆分总结
将存放在同一个数据库中的数据分散存放到多个数据库上,实现分布存储,通过路由规则路由访问特定的数据库 这样一来每次访问面对的就不是单台服务器了,而是N台服务器,这样就可以降低单台机器的负载压力。 sqlserver 2005版本之后,可以友好的支持“表分区”。   垂直(纵向)拆分:是指按功能模块拆分,比如分为订单库、商品库、用户库…这种方式多个数据库之间的表结构不同。    优点: ...
SQL Server中连接两表修改数据
平常一直只用到了连接查询,今天修改数据的时候突然发现要用到另一个表的数据,然后百度了一下,学会了连接修改,sql语句如下update from table1 set table1.name=table2.name from table2 inner join table1 on table1.id=table2.id where table1.sex='男'
SQL server 第三篇 多表联接查询
        多表联接查询一、多表联接查询的分类多表联接查询实际上是通过各个表之间共同列的关联性来查询数据的,它是关系数据库查询最主要的特征。联接查询可分为三大类,分另为:1.  内联接。2.  外联接。3.  交叉联接。那么我们一起来看一下如何使用多表联接查询。A.       内联接:内联接是最典型、最常用的联接查询,它根据表中共同的列来进行匹配,只有满足匹配
使用sql语句进行数据分类汇总
现有表Test,内容如下:  ID   Catalog    Num  1          A            3  1          B            5 2          A            8  2          B            2   现在想按ID查询出这种结果:  --------------------  1          A      
关于sql 语句的求孤岛问题
SQL server 语句问题? 问题:    1.我要实现的功能是:      student表里有4个字段为:姓名,余额,消费次数,消费金额.      消费机正常情况下消费:记录应该是       姓名   余额  消费次数   消费金额       张三    30      1         5.0       张三    25      2         5.0