sql server怎么返还SUM的值啊

来源:百度知道 编辑:UC知道 时间:2024/07/02 02:42:36
我是个初学者,应用ASP+SQLSERVER做火车票售票系统客户端的毕业设计!!
问题1:select sum(shoupiaonum),sum(shoupiaoshouru)from shoupiaotongji
select sum(tuipiaonum),sum(tuipiaojine)from tuipiaotongji
上面我通过在表shoupiaotongji 和tuipiaotongji中 求得这4列的和值, 但我想把结果返还到另一个表danbangxinxi的shoupiaonum shoupiaoshouru tuipiaonum 和tuipiaojine中,怎么做? 是否用RETURN语句? 求高人指点!!
问题2:系统里我只做了起始站到终点站的车次,并没有考虑到起始站到中间站的票,这个功能也必须要完成,但我感觉不知道从何下手,请高手们点拨一下,给点思路。
谢谢大家 导师帮我把问题解决了 代码应如下:
你看看:insert into dangbanxinxi values(0,0,0,0)
update dangbanxinxi set
shoupiaonum=(select sum(shoupiaonum) from shoupiaotongji) ,
shoupiaoshouru=(select sum(shoupiaoshouru) from shoupiaotongji) ,
tuipiaonum=(select sum(tuipiaonum) from tuipiaotongji) ,
tuipiaojine=(select sum(tuipiaojine) from tuipiaotongji) 呵呵!

Insert into danbangxinxi(shoupiaonum ,shoupiaoshouru ) select sum(shoupiaonum),sum(shoupiaoshouru)from shoupiaotongji

Insert into danbangxinxi(tuipiaonum,tuipiaojine) select sum(tuipiaonum),sum(tuipiaojine)from tuipiaotongji

又是火车票。。网上这类代码一堆啊 年年都有人做这个毕业设计

针对补充:
这可能是因为 dangbanxinxi这个表中还包含有其他的字段 而你插入的时候只插入tuipiaonum,tuipiaojine这两个字段 其余字段的值你没设置 所以出错

建议修改:
(1)将表其余字段的非空约束去掉。不过不建议采用这种方式,这会影响表的完整性
(2)给非空字段设置默认值,建议采用

PS:若你的表中没记录,使用sum出来的值可能为空,建议你先运行下elect sum(tuipiaonum),sum(tuipiaojine)from tuipiaotongji 看看结果

很有可能是你的售票或者退票的记录是0条,这样你sum到的结果就是空,加个函数让它在为空的时候取0就行了 ,Oracle 用nvl,sqlserver用isnull
;ISNULL ( sum(tuipiaonum), 0),这样就可以了。
-----------------
但有一点我没弄明白,就是你的 tuipiaonum 这个字段,它应该是作为一个主键标记存在的,你求和无非是要统计你退了多少票或者售出了多少票,这个过程你在统计的时候count(*)得到的条数,而求和则是把 tuipiaonum 所有的数值相加,你的这个方法说实话让我很迷惑。。。