我正在学习数据库,我有两个问题: 我怎样才能知道2010年1月有多少员工参观了这家商店?
表格如下:
X:Employees(PK),VisitDate, EmployeeNumber(FK)
Y:EmployeeNumber
SELECT * FROM `X` WHERE `VisitDate ` BETWEEN '2010-01-01' AND '2010-01-31'
这只是显示某个月之间访问过的人的数据,是否有可能找出总人数?
第二个问题是:
如何使用JOINS显示EmployeeNumber以及2010年1月有多少员工访问该商店?
答案 0 :(得分:1)
要显示1月份访问的人数,您只需按如下方式修改SQL。
SELECT *
FROM
(
SELECT EmployeeNumber, COUNT(1) AS TotalAmountOfVisitor
FROM X
WHERE VisitDate BETWEEN '2010-01-01' AND '2010-01-31 23:59:59'
GROUP BY EmployeeNumber
) AS RefTable
INNER JOIN Y ON RefTable.EmployeeNumber = Y.EmployeeNumber
感谢@zerkms进行更正。
答案 1 :(得分:0)
1)SELECT count(*)FROM X
WHERE VisitDate
BETWEEN'2010-01-01'''2010-01-31'
2)你做不到。