sql语句问题 - Java / Web 开发
select o_customer,o_price from orders having o_price >=avg(o_price)
select o_customer,o_price from orders where o_price >=(select avg(o_price) from orders)
我感觉没有区别啊,怎么在mysql会有区别。
o_ id o_date o_price o_customer
1 2008-12-29 1000 bush
2 2008-11-23 1600 carter
3 2008-10-05 700 bush
4 2008-09-28 300 bush
5 2008-08-06 2000 adams
6 2008-07-21 100 carter
having o_price >=avg(o_price)
这个是分组的条件吧 是用来过滤显示的组的
where 是过滤行的,应该有区别的,但你这样写,不加group by 没试验过。不知道是什么意思!
where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。
having 子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having 条件显示特定的组,也可以使用多个分组标准进行分组。
having 子句被限制子已经在SELECT语句中定义的列和聚合表达式上。通常,你需要通过在HAVING子句中重复聚合函数表达式来引用聚合值,就如你在 SELECT语句中做的那样。例如:
SELECT A COUNT(B) from TABLE GROUP BY A HAVING COUNT(B)>2
avg(o_price) 与(select avg(o_price) from orders)这两个的区别吧
第一个应该是每条记录的平均值。
第二个应该是所有记录的平均值吧
我SQL不咋滴。不知道对不对。
不是很懂,等待结果。
select o_customer,o_price from orders having o_price >=avg(o_price)首先有错误可以写成(1)select o_customer,o_pri
相关问答:
可能因为工作的原因 接触数据库这块比较少,之前都是做程序这块,数据库这块都有专门的人来做 分工都很明细 所以对数据库这一块完全不了解。前段时间 去面试了几家公司 几乎都是在数据库这块挂掉的 连个简单的SQ ......
请我用FCK上传文件,在本地的windows机上测试可以,但部署到linux服务器上就上传不了文件,上传文件时一直卡在那里。望各位大虾指点,谢谢!
路过,帮你顶一下。。。。。。。。。。。。。。
上传文件的路径问题, ......
java swing 程序如何打包成jar,然后可以通过批处理文件bat直接运行,有没有什么工具直接可以完成这两个工作?
用jar打包,把运行需要的jar拷贝到一个目录,批处理用 start javaw -cp .;其他包路径 运行
用zip ......
需求如下:
学院 academy(aid,aname)
班级 class(cid,cname,aid)
学生 stu(sid,sname,aid,cid)
住宿区 region(rid,rname)
宿舍楼 build(bid,rid,bnote) bnote是‘男’/‘女’
宿舍 dorm(did,rid,bid,bedn ......
如: @superwaring("unchecked");
这个里面都可以取哪些值啊,还有类似的 @superwaring标签有哪些啊
没用过。。
看jee的api
javax.persistence里
@superwaring("unchecked");只是忽略 ......