我想知道是否有人可以帮助我。以下是我的数据样本集:
FirstName LastName Department Ticket Hours Shift DateWorked Key
Bob Smith Sleeves 23235 4 1 2017-01-01 001
Bob Smith Sleeves 12345 4 1 2017-01-01 001
Jim Bo Sleeves 12345 8 1 2017-01-01 002
Janet Moore Lids 78945 8 2 2017-01-01 003
Jon Bob Lids 45621 1.5 3 2017-01-01 004
Jon Bob Lids 45621 7.5 3 2017-01-01 004
Bob Smith Mugs 12345 8 1 2017-01-02
Jim Bo Lids 99999 8 3 2017-01-02
应该返回这样的内容:
DateWorked Shift Department HeadCount
2017-01-01 1 Sleeves 2 (Bob Smith has two entries but counted as one and Jim Bo makes for 2)
2017-01-01 2 Lids 1 (Janet)
2017-01-01 3 Lids 1 (Jon)
请注意所有部门都会轮班工作。这只是一个样本集。每个部门可以有从零到一百的任何地方。
另外一名员工可以在一天内完成多个部门!我不知道如何解释。
这就是我所拥有的。因此,对于这个例子,它并不是对Bob Smith的总结。它把他算作两个。
SELECT Scheduled, Department, [Shift], COUNT(*) as HeadCount
FROM EmployeeTickets
WHERE Scheduled >= '2017-01-01' AND Scheduled < '2017-12-31'
GROUP BY Scheduled, Department, [Shift]
ORDER BY Scheduled, Department, [Shift]
谢谢。
ETA我不知道它是否有帮助,但在表格中每个条目都有一个密钥,因此1月1日的Bob Smith将拥有当天的密钥。他的社会安全号码也在那里。我试图以其中一种方式分组。
答案 0 :(得分:1)
只需使用source={{ uri: this.props.cover_URL }}
DISTINCT
当然,如果你有多个同名的人,这将有问题。所以我希望你的桌子上有一些EmployeeID,这样你就可以区分每个员工。
SELECT Scheduled, Department, [Shift], COUNT( DISTINCT FirstName ) as HeadCount
FROM EmployeeTickets
WHERE Scheduled >= '2017-01-01' AND Scheduled < '2017-12-31'
GROUP BY Scheduled, Department, [Shift]
ORDER BY Scheduled, Department, [Shift]