码迷,mamicode.com
首页 > 数据库 > 详细

在SUM()行数中使用SQL变量导致不可预测结果

时间:2015-07-15 13:05:45      阅读:303      评论:0      收藏:0      [点我收藏+]

标签:

 

Query 1)

Select * From test;
no1no2
1 1
2 2
3 3
4 4
5 5

Query 2)

select @wokao:= (no1 + no2), @wokao from test group by no1;
no1no2
2 2
4 4
6 6
8 8
10 10

Query 3)

select @wokao:= (no1 + no2), sum(@wokao) from test group by no1;
no1no2
2 null
4 2
6 4
8 6
10 8

第三个SQL查询的结果很奇怪,理论上它应该得到和query2一样的结果,为什么得到的结果不一样呢。

我在StackOverFlow问了这个问题

答案大该是说,第三个SQL查询中,先执行了SUM(@wokao),后执行了@wokao:= (no1 + no2),导致以上结果。

Written with StackEdit.

在SUM()行数中使用SQL变量导致不可预测结果

标签:

原文地址:http://www.cnblogs.com/zfreay/p/4647811.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!