mysql 分组汇总
1.创建表:
create table groupTable(dept varchar(6),phone varchar(20),amount int);
2.插入测试数据:
insert groupTable
select '营业部',8001,20 union all
select '营业部',8002,30 union all
select '财务部',6001,10 union all
select '财务部',6003,100;
3.mysql 语句:
select ifnull(dept,'总计') as '部门',ifnull(phone,'小计') as '电话',sum(money) as '金额' from groupTable group by
dept,phone with rollup;
4.结果显示:
+--------+------+------+
| 部门 | 电话 | 金额 |
+--------+------+------+
| 财务部 | 6001 | 10 |
| 财务部 | 6003 | 100 |
| 财务部 | 小计 | 110 |
| 营业部 | 8001 | 20 |
| 营业部 | 8002 | 30 |
| 营业部 | 小计 | 50 |
| 总计 | 小计 | 160 |
+--------+------+------+
相关文档:
1.1.1 MySQL下载、安装与启动
在使用MySQL之前,需要建立数据库的环境来创建数据表,首先我们需要安装该数据库环境,即MySQL。
1、下载MySQL
MySQL的官方网站是http://www.mysql.org/,如图2-9所示:
图2-9 MySQL官方网站
当前稳定版本为5.1,我们选用MySQL 5.1.22作为数据库服务器,到其官方 ......
一直以为mysql随机查询几条数据,就用
SELECT * from `table` ORDER BY RAND() LIMIT 5
就可以了。
但是真正测试一下才发现这样效率非常低。一个15万余条的库,查询5条数据,居然要8秒以上
查看官方手册,也说rand()放在ORDER BY 子句中会被执行多次,自然效率及很低。
You cannot use a column with RAND() values i ......
import java.sql.*;
/*
* JAVA连接ACCESS,SQL Server,MySQL,Oracle数据库
*
* */
public class JDBC {
public static void main(String[] args)throws Exception {
Connection conn=null;
//====连接ACCESS数据库 ......
1.CREATE USER
CREATE USER user [IDENTIFIED BY [PASSWORD] 'password']
[, user [IDENTIFIED BY [PASSWORD] 'password']] ...
CREATE USER用于创建新的MySQL账户。要使用CREATE USER,您必须拥有mysql数据库的全局CREATE USER权限,或拥有INSERT权限。对于每个账户,CREATE USER会在没有权限的mysq ......