新建了一个叫aa的表,字段类型都是int
需求:每一列的最大值之和
我执行的SQL是:
SELECT MAX(ceshi1 + ceshi2 + ceshi3 + ceshi4) FROM aa; -- 运行结果是209
SELECT MAX(ceshi1) + MAX(ceshi2) + MAX(ceshi3) + MAX(ceshi4) FROM aa; -- 运行结果是212
为什么结果会不一样呢?
上面那个结果是209是这样计算的:先去找ceshi1列中最大值,再去ceshi2中找最大值,再去ceshi3中找最大值,再去ceshi4中找最大值
然后mysql发现ceshi3中170最大,然后寻找与ceshi3的170所在同行的数据,即:5+11+170+23=209
下面那条sql就是取每列的最大值