我有二表,表1 有姓名,单位ID,ID
表2 有单位,ID
表3 有ID 标题, 姓名ID,添加时间
我想找出 表3中,我想找出一个单位2008年6月份有多少条数据,用Count(*)就行了 其中表2和表1是主从表,表3和表1是主从表~
大家即兴发挥,有点急,大家帮下,前几天我还给灾区献了血地,相信有不少朋友也会帮帮我~~
表2 有单位,ID
表3 有ID 标题, 姓名ID,添加时间
我想找出 表3中,我想找出一个单位2008年6月份有多少条数据,用Count(*)就行了 其中表2和表1是主从表,表3和表1是主从表~
大家即兴发挥,有点急,大家帮下,前几天我还给灾区献了血地,相信有不少朋友也会帮帮我~~
解决方案 »
- C# 调用C++ char* f(char*) 急急急,在线等
- winForms程序界面动态生成控件
- ExecuteReader的关闭
- 用户控件请各位帮忙
- 急!Excel合并单元格后如何使字显示位置在中间(c#)
- 关于IEnumerator的一个问题--望指点
- 简单工厂跟抽象工厂有什么区别
- 关于chart控件问题 求大神
- c# 有没有办法判断单向QQ号码
- 关于水晶报表数据获得是通过数据库的存储过程来得到数据!!(请求各方大侠高手进入)
- VB.net 中的 'System.Threading.Thread.CurrentThread.Sleep(10) 在C#中如何做。
- 创建excel 问题,高分求解!
where a.单位ID=b.id and c.姓名ID=a.id
and convert(varchar(7),添加时间,120)='2008-06'
string str="厉害";
join 表3.姓名ID = 表1.ID
join 表2.ID = 表1.单位ID
where Convert(varchar(7),表3.添加时间,120) = '2008-06'
and 表2.单位 = ?
where a.单位ID=b.id and c.姓名ID=a.id
and convert(varchar(7),添加时间,112)='200806'
select b.ID, b.单位, count(c. *) from 表1 a, 表2 b,表3 c
where a.单位ID=b.id and c.姓名ID=a.id
and convert(varchar(7),添加时间,112)='200806'
Group by b.ID, b.单位
Table2: ID Department
Table3: ID Title UserId AddTimeSelect DepartId,count(*) as TotalNum from (
Select a.ID,c.ID as DepartId,a.AddTime
from Table3 a
inner join Table1 b on a.UserId=b.ID
inner join Table2 c on b.DepartId=c.ID) aa
group by DepartId
where DATENAME(year, AddTime)=2008 and DATENAME(month, AddTime)=6
表1 a join 表2 b on a.单位id=b.单位id
join 表3 c on a.姓名id=c.姓名id
where c.添加时间 >='2008-06-01' and c.添加时间<'2008-07-01'
表1 a join 表2 b on a.单位id=b.单位id
join 表3 c on a.姓名id=c.姓名id
where c.添加时间 >='2008-06-01' and c.添加时间<'2008-07-01'我晕,csdn都什么啊
表1 a join 表2 b on a.单位id=b.单位id
join 表3 c on a.姓名id=c.姓名id
where c.添加时间 >='2008-06-01' and c.添加时间<'2008-07-01'日,sql代码出错了....csdn又完蛋了
where a.单位ID=b.id and c.姓名ID=a.id
and convert(varchar(6),添加时间,112)='200806'varchar(6),刚才错了.写成7了,
month(时间字段) 这二个分别提取出年和月 还有朋友写好了么? 13楼的语法错误了,我只不不太清楚什么JION IN的用法
/*建立测试表*/
CREATE TABLE #A
(
姓名ID INT,
单位ID INT,
姓名 VARCHAR(50)
) CREATE TABLE #B
(
单位ID INT,
单位 VARCHAR(50)
) CREATE TABLE #C
(
ID INT,
标题 VARCHAR(50),
姓名ID INT,
添加时间 DATETIME
) /*插入测试数据*/
INSERT INTO #A VALUES(1,1001,'张三')
INSERT INTO #A VALUES(2,1001,'李四')
INSERT INTO #A VALUES(3,1002,'王五')
INSERT INTO #A VALUES(4,1001,'马六')
INSERT INTO #A VALUES(5,1003,'赵八')
INSERT INTO #A VALUES(6,1003,'胡九')INSERT INTO #B VALUES(1001,'国美')
INSERT INTO #B VALUES(1002,'永乐')
INSERT INTO #B VALUES(1003,'沃尔玛')INSERT INTO #C VALUES(101,'国美国美国美国美国美',1,'2008-03-29 13:37:58.057')
INSERT INTO #C VALUES(102,'国美国美国美国美国美',2,'2008-04-29 13:37:58.057')
INSERT INTO #C VALUES(103,'国美国美国美国美国美',3,'2008-03-27 13:37:58.057')
INSERT INTO #C VALUES(104,'国美国美国美国美国美',2,'2008-04-10 13:37:58.057')
INSERT INTO #C VALUES(105,'国美国美国美国美国美',3,'2008-05-29 13:37:58.057')
INSERT INTO #C VALUES(106,'国美国美国美国美国美',4,'2008-06-25 13:37:58.057')
INSERT INTO #C VALUES(107,'国美国美国美国美国美',6,'2008-06-29 13:37:58.057')
INSERT INTO #C VALUES(108,'国美国美国美国美国美',4,'2008-06-10 13:37:58.057')
INSERT INTO #C VALUES(109,'国美国美国美国美国美',6,'2008-06-04 13:37:58.057')
INSERT INTO #C VALUES(110,'国美国美国美国美国美',4,'2008-07-29 13:37:58.057')
INSERT INTO #C VALUES(111,'国美国美国美国美国美',3,'2008-07-12 13:37:58.057')
INSERT INTO #C VALUES(112,'国美国美国美国美国美',1,'2008-07-15 13:37:58.057')
INSERT INTO #C VALUES(113,'国美国美国美国美国美',2,'2008-07-19 13:37:58.057')
INSERT INTO #C VALUES(114,'国美国美国美国美国美',3,'2008-06-04 13:37:58.057')
INSERT INTO #C VALUES(115,'国美国美国美国美国美',1,'2008-06-23 13:37:58.057')
INSERT INTO #C VALUES(116,'国美国美国美国美国美',3,'2008-08-19 13:37:58.057')
INSERT INTO #C VALUES(117,'国美国美国美国美国美',3,'2008-08-14 13:37:58.057')
INSERT INTO #C VALUES(118,'国美国美国美国美国美',6,'2008-08-21 13:37:58.057')
INSERT INTO #C VALUES(119,'国美国美国美国美国美',1,'2008-08-25 13:37:58.057')
INSERT INTO #C VALUES(120,'国美国美国美国美国美',6,'2008-06-11 13:37:58.057')
INSERT INTO #C VALUES(121,'国美国美国美国美国美',2,'2008-06-01 13:37:58.057')
INSERT INTO #C VALUES(122,'国美国美国美国美国美',3,'2008-05-17 13:37:58.057')
--查出2008年6月份符合条件的信息
SELECT #B.单位,COUNT(*) AS 人数 FROM #C INNER JOIN #A ON #A.姓名ID=#C.姓名ID
INNER JOIN #B ON #A.单位ID=#B.单位ID WHERE #C.添加时间>'2008-06-01' GROUP BY #B.单位 --查出2008年符合条件的信息
SELECT #B.单位,COUNT(*) AS 人数 FROM #C INNER JOIN #A ON #A.姓名ID=#C.姓名ID
INNER JOIN #B ON #A.单位ID=#B.单位ID WHERE #C.添加时间>'2008-01-01' GROUP BY #B.单位
--查出2008年6月份符合条件的信息
SELECT #B.单位,COUNT(*) AS 人数 FROM #C INNER JOIN #A ON #A.姓名ID=#C.姓名ID
INNER JOIN #B ON #A.单位ID=#B.单位ID WHERE #C.添加时间>'2008-06-01' AND #C.添加时间<'2008-07-01' GROUP BY #B.单位 --查出2008年符合条件的信息
SELECT #B.单位,COUNT(*) AS 人数 FROM #C INNER JOIN #A ON #A.姓名ID=#C.姓名ID
INNER JOIN #B ON #A.单位ID=#B.单位ID WHERE #C.添加时间>'2008-01-01' AND #C.添加时间<'2008-01-01' GROUP BY #B.单位
select b.ID, b.单位, count(c. *) from 表1 a, 表2 b,表3 c
where a.单位ID=b.id and c.姓名ID=a.id
and convert(varchar(7),添加时间,112)='200806'
Group by b.ID, b.单位