表一:姓名 性别 语文 数学
张三 男 80 90
李四 女 70 80
王五 男 60 90
刘十 女 70 80
表二:姓名 性别 英语
马六 男 90
赵奇 女 60
孙八 女 80
钱九 男 70
汇总成:性别 语文 数学 英语
男 140 180 160
女 140 160 140
请给出一个汇总方法,谢谢,一定给分
用SQL语句如何汇总两个表。
答案:2 悬赏:30
解决时间 2021-11-06 16:08
- 提问者网友:霸气大叔
- 2021-11-06 11:39
最佳答案
- 二级知识专家网友:说多了都是废话
- 2021-11-06 12:09
select a.性别,a.语文,b.数学,c.英语 from
(select 性别,sum(语文) 语文 from 表1 group by 性别) a,
(select 性别,sum(数学) 数学 from 表1 group by 性别) b,
(select 性别,sum(英语) 英语 from 表2 group by 性别) c
where a.性别=b.性别
and a.性别=c.性别
(select 性别,sum(语文) 语文 from 表1 group by 性别) a,
(select 性别,sum(数学) 数学 from 表1 group by 性别) b,
(select 性别,sum(英语) 英语 from 表2 group by 性别) c
where a.性别=b.性别
and a.性别=c.性别
全部回答
- 1楼网友:傲娇菇凉
- 2021-11-06 12:28
sql server里可以使用@@identity来获取刚刚生成的那个自增长的id
你insert a之后立刻select @a=@@identity,然后把@a插入到表b就可以了。
当然,你也可以用触发器,对a的after insert触发器,在触发器里面有inserted表,在其中可以得到刚刚插入的那一行的数据,取出来,图片id,插入b,但问题是,你要插入b的其他数据在触发器中如何得到,因为要插入b的数据,不都在a中,因此这么做很麻烦。不如第一个方法简单。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯