解决方案 »
- update对同一个表操作,有的行可以有的行不行呢?
- mysql root账户登录user表是只读的,怎么修改啊?
- 问个关于数据库查询非常菜鸟的问题
- 字符串转数字select * from tablename limit function('10')
- 求教关于CLUSTER中的MANAGEMENT NODE的配置
- 求高手写个mysql语句。叩谢
- 一条sql我问两次,为的是求人解决
- mysql5.0.10-0在redhat as 3的安装启动不了的问题
- 关于mysql数据库分区表外键的问题望大神指教
- 请问heidisql查询出来的中文显示乱码问题那位大神解决了?或是有别的管理工具,只要不乱码就行
- MySQL结果集太大
- WINCE设备如何与桌面PC的MYSQL通信
1.8.4. MySQL对标准SQL的扩展
MySQL服务器包含一些其他SQL DBMS中不具备的扩展。注意,如果使用了它们,将无法把代码移植到其他SQL服务器。在某些情况下,你可以编写包含MySQL扩展的代码,但仍保持其可移植性,方法是用“/*... */”注释掉这些扩展。o 不需要在GROUP BY部分命名所有选择的列。对于某些十分特殊但相当正常的查询,它能提供更好的性能。请参见12.10节,“与GROUP BY子句同时使用的函数和修改程序”。o 可以与GROUP BY一起指定ASC和DESC。
select country,province,district,sex,sum(num)
from t
group by country,province,district,sex 就可以了 因为你是按 country,province,sex
分组的呀。这三个字段相同就会累加。。
我也一樣.
然而,假如可以确定这个字段都是重复的值(譬如多表联接), 那就没有这方面的捆饶,反而会简化SQL语句,也有可能会提高性能.比如以下语句
select A.id, B.desc, B.XXX, B.YYY SUM(A.AMT)
FROM A
join b on a.id=b.id
where a.id=? and b.xxx=?
group a.id假如有标准的SQL语句写, 要么要好几个嵌套, 要么group 后面很长