awey8899 2016-08-13 09:23 采纳率: 0%
浏览 1006
已结题

我这个mysql查询语句最好怎么写啊

V表
id v date
1 v11 2011-01-01
2 v12 2012-01-01
3 v13 2013-01-01
4 v14 2014-01-01
5 v15 2015-01-01
6 v16 2016-01-01

B表
id b c date
1 b11 c11 2011-01-01
2 b12 c12 2012-01-01
3 b13 c13 2013-01-01
4 b14 c14 2014-01-01
5 b15 c15 2015-01-01
6 b16 c16 2016-01-01

select

(select avg(b) from B where b.date>=V.datemin and b.date<V.datemax)
from
V

其中V.datemin为V表date最小值,V.datemax为V表date最大值,V,B表无任何关联,上面本人提供的sql语句最好怎么写?

  • 写回答

7条回答 默认 最新

  • yicp123 2016-08-13 11:06
    关注

    先把V表的min(date)和max(date)找出来:
    select min(v.date) as datemin from table v;
    select max(v.date) as datemax from table v;

    select avg(b) from B where b.date>=datemin and b.date<datemax;

    参考自:
    msyql 数据库教程 http://www.data.5helpyou.com/

    评论

报告相同问题?