一个神奇的SQL语句

题目是这样的:

 

分别往这两张表中添加3条数据。。。

查询营业额最高商家的商品总价与营业额最低商家的商品总价差是多少(5分)
CREATE VIEW vm2 AS SELECT price*limit_num AS total_money ,b.id FROM business b,goods g WHERE b.id=g.bid ORDER BY turnover DESC;
CREATE VIEW vm3 AS SELECT price*limit_num AS total_money ,b.id FROM business b,goods g WHERE b.id=g.bid ORDER BY turnover;
#最大的营业额
SELECT (SELECT total_money FROM vm2 LIMIT 0,1)-(SELECT total_money FROM vm3 LIMIT 0,1) '营业额差值';

总结:

  这种写法自认为是比较low的,遇到的最大问题是不知道怎么方便的求第一条记录和最后一条记录,从网上查了是top()方法,但好像mysql不支持;还有的说可以自己产生一列,相当于是编号,但也有同样的问题。先记录下,希望早日回来改这段代码。

想什么,就有什么,聚焦优秀
原文地址:https://www.cnblogs.com/sunflying/p/13052221.html