求一条统计语句(需要统计某一个用户在一段时间内发送和接受到的邮件数量)

此人很懒没有设置昵称 2012-05-28 02:17:44
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for s_userinfo
-- ----------------------------
DROP TABLE IF EXISTS `s_userinfo`;
CREATE TABLE `s_userinfo` (
`User_Id` varchar(50) NOT NULL,
`User_Name` varchar(80) DEFAULT NULL,
`Password` varchar(50) DEFAULT NULL,
`Date_Hired` varchar(20) DEFAULT NULL,
`Date_Terminated` varchar(20) DEFAULT NULL,
`Is_Login` char(1) DEFAULT NULL,
`Locked_Time` varchar(20) DEFAULT NULL,
`Enable_Internet_Login` char(1) DEFAULT 'Y',
PRIMARY KEY (`User_Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `s_userinfo` VALUES ('chunlei', null, 'chunlei', '2012-05-24', null, 'Y', null, 'Y');
INSERT INTO `s_userinfo` VALUES ('ignome', null, 'cc', '2012-05-22', null, 'Y', null, 'Y');
INSERT INTO `s_userinfo` VALUES ('manager', '', 'manager', '2011-10-30', '2015-12-31', 'Y', null, 'Y');
INSERT INTO `s_userinfo` VALUES ('rs111222', null, 'xiami', '2012-05-25', null, 'Y', null, 'Y');
INSERT INTO `s_userinfo` VALUES ('rs81', null, 'yjiang', '2012-05-22', null, 'Y', null, 'Y');
INSERT INTO `s_userinfo` VALUES ('rs82', null, 'yuhan', '2012-05-22', null, 'Y', null, 'Y');




SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for b_mail
-- ----------------------------
DROP TABLE IF EXISTS `b_mail`;
CREATE TABLE `b_mail` (
`id` bigint(19) NOT NULL AUTO_INCREMENT,
`User_Id` varchar(50) NOT NULL COMMENT '户用编号或部门编号',
`Com_Id` varchar(50) DEFAULT NULL,
`Emp_Code` varchar(50) DEFAULT NULL,
`Cust_Id` varchar(50) DEFAULT NULL,
`Mail_To` varchar(2000) NOT NULL COMMENT '收件人',
`Folder` varchar(20) NOT NULL COMMENT '件邮夹',
`Mail_From` varchar(200) NOT NULL COMMENT '发件人',
`Rsflg` char(1) DEFAULT NULL COMMENT '收接发送标识',
`Cc` varchar(2000) DEFAULT NULL COMMENT '抄送',
`Bcc` varchar(2000) DEFAULT NULL COMMENT '密送',
`Replyto` varchar(60) DEFAULT NULL,
`Replyflg` char(1) DEFAULT NULL COMMENT '针对收进来的邮件Y:已回复,N:未回复。',
`Subject` varchar(255) DEFAULT NULL COMMENT '件邮主题',
`Body` longtext COMMENT '件邮内容',
`Filenam` varchar(2000) DEFAULT NULL COMMENT '是否有附件',
`Size` decimal(16,0) DEFAULT NULL COMMENT '件邮大小',
`Rsdate` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '送发接收日期',
`Delflg` char(1) DEFAULT 'N',
`Audflg` char(1) DEFAULT NULL,
`Msg_id` varchar(120) DEFAULT NULL COMMENT '息消唯一ID',
`Strangeflag` char(1) DEFAULT NULL,
`Sendstatus` char(1) DEFAULT 'Y' COMMENT '送发状态[Y:已发送,N:未发送]',
`Sendcount` int(10) DEFAULT NULL,
`Needrtflag` char(1) DEFAULT NULL COMMENT '是否需要回执',
`Tasknum` varchar(30) DEFAULT NULL,
`Plansenddate` datetime DEFAULT NULL COMMENT '划计发送日期',
`Rubmailflg` char(1) DEFAULT 'N',
`Readflg` char(1) DEFAULT NULL COMMENT '是否已读',
`Priority` char(1) DEFAULT NULL COMMENT '件邮等级',
`Fromip` varchar(100) DEFAULT NULL COMMENT '发件IP',
`Importflg` char(1) DEFAULT NULL COMMENT '导入标识',
`Forwardflg` char(1) DEFAULT 'N',
`Aimflg` int(4) DEFAULT '0' COMMENT '联系目的',
`Disflg` char(1) DEFAULT 'N',
`Remark` varchar(400) DEFAULT NULL COMMENT '注备',
`delete_user_id` varchar(50) DEFAULT NULL COMMENT '审核人',
`type` char(1) DEFAULT NULL COMMENT '邮j箱类型[个人:c,部门:p]',
`isHot` char(1) DEFAULT 'N' COMMENT '是否是重要邮件[是:Y,否N]',
`delete_date` datetime DEFAULT NULL COMMENT '删除时间',
PRIMARY KEY (`id`),
KEY `idx_mail_userid` (`User_Id`) USING BTREE,
KEY `idx_mail_msgid` (`Msg_id`) USING BTREE,
KEY `idx_mail_mailto` (`Mail_To`(255)) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=18910 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `b_mail` VALUES ('1', 'rs82', '8', 'rs82', '1016', 'yuhan_java@163.com;', '已发送邮件', '719190566@qq.com', 'S', '', null, 'yuhan_java@163.com;', null, 'sdgsg', 'sfaasdfasdf', 'Y', '0', '2012-05-22 15:01:58', 'N', null, null, 'C', null, '0', 'N', null, null, 'N', 'Y', '3', null, null, 'N', '0', 'N', '', null, null, 'N', null);
INSERT INTO `b_mail` VALUES ('2', 'rs82', '8', 'rs82', '1016', 'yuhan_java@163.com;', '已发送邮件', '719190566@qq.com', 'S', '', null, 'yuhan_java@163.com;', null, 'zaici', '再次发送', 'Y', '0', '2012-05-22 15:02:55', 'N', null, null, 'C', null, '0', 'N', null, null, 'N', 'Y', '3', null, null, 'N', '0', 'N', '', null, null, 'N', null);
INSERT INTO `b_mail` VALUES ('3', 'ignome@foxmail.com', '8', null, '1016', 'ignome@foxmail.com', '已发送邮件', 'ignome@foxmail.com', 'S', null, null, null, null, '这是睿星科技在为您配置SMTP服务器时发出的测试邮件。', '', null, '0', '2012-05-22 15:01:08', null, null, null, 'C', null, '0', null, null, null, null, null, null, null, null, null, '0', null, null, null, null, 'N', null);


需求:求某一个或多个用户在一段时间内发送和接受到的邮件数量

...全文
303 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
rucypli 2012-05-28
  • 打赏
  • 举报
回复
select T1.p1,T1.num1,T2.num2
from (
select 收件人 as p1,count(*) as num1
from b_mail
where Rsdate between '2012-01-01' and '2012-03-01'
group by 收件人
)T1,(
select 收件人 as p2,count(*) as num2
from b_mail
where Rsdate between '2012-01-01' and '2012-03-01'
group by 收件人
)T2
where T1.p1 = T2.p2

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧