分享

跪求sql

love2979 发表于 2013-10-17 21:30:29 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 0 6640
--一个业务的所有功能
CREATE TABLE `buse` (
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(255) default NULL,
  `desc` varchar(255) default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--用户表
CREATE TABLE `user` (
  `id` int(11) NOT NULL auto_increment,
  `username` varchar(255) default NULL,
  `tel` varchar(255) default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--用户使用功能的历史记录表
CREATE TABLE `user_buse` (
  `id` int(11) NOT NULL auto_increment,
  `user_id` int(11) default NULL,
  `buse_id` int(11) default NULL,
  `date` datetime default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--向功能表插入数据
INSERT INTO `buse` VALUES ('1', 'b1', 'x1');
INSERT INTO `buse` VALUES ('2', 'b2', 'x2');
INSERT INTO `buse` VALUES ('3', 'b3', 'x3');
INSERT INTO `buse` VALUES ('4', 'b4', 'x4');
--向用户表插入数据
INSERT INTO `user` VALUES ('1', 'aaa', '1111');
INSERT INTO `user` VALUES ('2', 'bbb', '222');
INSERT INTO `user` VALUES ('3', 'ccc', '333');
INSERT INTO `user` VALUES ('4', 'ddd', '444');
--向用户使用功能历史表插入数据
INSERT INTO `user_buse` VALUES ('1', '1', '1', '2012-08-03 11:35:43');
INSERT INTO `user_buse` VALUES ('2', '1', '2', '2012-08-01 11:36:00');
INSERT INTO `user_buse` VALUES ('3', '2', '3', '2012-08-03 11:36:41');
INSERT INTO `user_buse` VALUES ('4', '3', '4', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('5', '4', '4', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('6', '1', '2', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('7', '3', '3', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('8', '1', '4', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('9', '3', '1', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('10', '3', '2', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('11', '4', '1', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('12', '4', '2', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('13', '3', '4', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('14', '3', '1', '2012-08-01 11:37:00');
INSERT INTO `user_buse` VALUES ('15', '1', '4', '2012-08-01 11:37:00');
--业务
统计某段时间内使用各项功能一次 ,二次 ,三次以上的用户数量 占总用户的百分比。

  统计出来的效果为:
--------------------------------------------------------------------------------------------
  使用次数   功能1  所占百分比%   功能2  所占百分比%   功能3  所占百分比%   功能4  所占百分比%
---------------------------------------------------------------------------------------------   
   1次        10       0.1%         10       0.1%         10       0.1%        10       0.1%   
---------------------------------------------------------------------------------------------
   二次        10       0.1%         10       0.1%         10       0.1%        10       0.1%   
---------------------------------------------------------------------------------------------   
  三次以上     10       0.1%         10       0.1%         10       0.1%        10       0.1%   
---------------------------------------------------------------------------------------------
本人愚昧:
   以上的sql的非常难写,我也问了一些人。有说写不出来。有的讲业务不对。有的讲业务没有意义。希望大家给我建议。
   跪求sql 希望各位好汉帮帮忙,看下能不能想到,不管oracle或者Mysql。sql server本人不知道用。
                                                                                 我QQ:297907562  
----------------------------------------------------------------------------------------------------------

没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条