sql不能实现的操作是(sql语句不能创建的是)
1、手工把你的2个SQL语句格式化一下以后create view kanasselect gno, name, unit, ( select sum(amount) from goods_in where goods_in.gno=goods.gno )- ( select sum(amount) from goods_out where goods_out.gno=goods.gno ) total from goodscreate view kanas select gno, name, unit, ( select sum(amount) from goods_in group by gno having goods_in.gno=goods.gno )- ( select sum(amount) from goods_out group by gno having goods_out.gno=goods.gno ) total from goods;发现差异在于,后面一个的 子查询里面 having 使用的不正确。
2、select sum(amount) from goods_in group by gno having goods_in.gno=goods.gno一般 having 是用于针对 分组统计后 的数据,进行进一步筛选的处理。
3、例如having sum(amount) >100这种,在分组之前,无法用 WHERE 语句来筛选的。
4、而你这个SQLhaving goods_in.gno=goods.gno这个 goods_in.gno=goods.gno 是不需要分组以后,才能作筛选处理的。
5、分组处理以前的 where 就可以处理了。
免责声明:本站发布的教育资讯(图片、视频和文字)以本站原创、转载和分享为主,文章观点不代表本网站立场。
如果本文侵犯了您的权益,请联系底部站长邮箱进行举报反馈,一经查实,我们将在第一时间处理,感谢您对本站的关注!
新励学网教育平台
海量全面 · 详细解读 · 快捷可靠
累积科普文章数:18,862,126篇