mysql - 依靠工作历史日志

标签 mysql sql join

我有一个表请求:

http://960design.com/temp/request.png

和一个表requesthx:

http://960design.com/temp/requesthx.png

单个请求可以由多个技术人员进行多次日志更新。例如,tech1 可以为初始电话联系创建日志,并在日志部分添加注释。然后 tech2 可以记下这些笔记并完成部分工作要求。技术 3 也可能正在从事相同的工作,等待预定的约会。

如果 tech3 已登录,我想显示 tech3 的每张未处理票证的计数。

实现这一目标的最佳方法是什么?
我已经完成了几个丑陋的查询,这些查询在 foreach 循环中运行查询以添加到计数变量,但这似乎是达到简单计数总数的真正漫长的方法。

我已经尝试过了...

SELECT requesthx.hxID, requesthx.requestID,
    requesthx.datetime_gmt, requesthx.log, requesthx.techID, requesthx.status,
COUNT($requestTable.requestID) AS tickets, request.status, requesthx.techID
FROM requesthx
LEFT JOIN request 
  ON (requesthx.requestID = request.requestID)
    WHERE (requesthx.status <> 'closed'
    AND request.status = 'open'
    AND requesthx.techID = '1')
GROUP BY requesthx.techID;

...在有 5 个未处理票证且 techID = 1 的查询中。我只收到 1 个作为计数。有什么想法吗?

最佳答案

你是对的,数据库有一种计算此类信息的方法。

Select count(*) as "TicketCount"
From requesthx
Where techid=3
And status = "open"
Group by techid

关于mysql - 依靠工作历史日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29135609/

相关文章:

php - POST 注册脚本的附加字段

mysql - sql中两个表的列求和

mysql - 将一个查询的查询结果转换为另一个查询的列

php - JOIN - 选择具有不同于 COUNT 标准的列/详细信息

php - 在回复消息中保留 Enter 和 Tab 键(空格)

php - Laravel、Carbon 和 Timestamp,如何设置默认值?

php - SQL Order By - 最后显示某些记录

mysql - SQL:计算类别内不同项目的总数

python - 1066, "不唯一的表/别名 - mysql 查询

mysql - 每个连接的计数 - 优化