MYSQL 分很多版本,建议多看看说明.帮你顶!!!
解决方案 »
- MYSQL 插入中文就失败 Data too long for column 'clipname' at row 1
- MYSQL函数传参问题
- mysql, ERROR 1064 (42000) 各位帮看下
- 求SQL语句:替换指定范围内的数据
- 请教mysql存储过程中涉及到limit,该如何写?
- mysql子查询中使用limit错误
- 超级菜鸟问题,MYSQL里怎么把INT型数据装成VARCHAR的?
- MYSQL提示too many connection....
- 64位win7专业版(惠普台式)如何安装mysql
- 装了wamp5.0用不了,怎么回事呢?
- mysql的问题 很基础的
- 请问各位高人,在MySql中如何构建这样一个高难度的查询?马上给分!
临时表我建立过了,读入4万记录进临时表也很慢阿。CPU资源100,如何降低它的占用率?回bierhoff,存储过程没有试过,我会试试看得
考勤明细表中 员工代号 迟到 分别作一个索引先处理考勤明细表,生成临时表, 然后在把这个临时表和其他表对应
建议你把mysql的配置文件[如:my.ini]配置为medium模式,在适当修改一下相应的缓存,问题应该不大的
一定要用索引,有无索引好多时候是几十倍的差异
FROM 员工信息 员工
LEFT JOIN 考勤明细 考勤 ON 员工.员工代号=考勤.员工代号
LEFT JOIN 科室明细 科室 ON 员工.科室代码=科室.科室代码
WHERE 员工.姓名 RLIKE('EDIT->TEXT')EDIT->TEXT为空时,可以返回所有员工的统计资料
为了方便大家看,所以用了中文做字段和表名.
SELECT 员工代号, SUM(考勤.迟到) AS 迟到次数, SUM(考勤.迟到 XOR 1) AS 准时次数
FROM 考勤;这样的统计基本立刻就完了,再把统计结果放入一个临时表,然后临时表和另两个表之间关联以得到你想要的结果。没了统计,后者也是很快的,这样看能不能达到你的目的。
那速度将是慢得惊人的.建议修改以下启动参数key_buffer_size
max_heap_table_size
sort_buffer
record_buffer
join_buffer_size
myisam_sort_buffer_size
net_buffer_length
tmp_table_size
B:
本楼主问题的建议考勤明细表 建议表结构序号 int 主键自动增加,
员工代号 int 索引,
打卡时间 datetime,
状态 tinyint(上班或是下班)然后新建一个月统计表.
每个月对 考勤明细表 进行一次统计后.加入到月统计表中