我正在尝试查询两个表:finished_events 和 flagged_events。首先,我需要与 company_id 相关的所有内容,所以
SELECT *
FROM finished_events
WHERE company_id=$id
ORDER by schedule, timestamp
然后我将其更改为:
SELECT * FROM finished_events
INNER JOIN flagged_events
ON finished_events.company_id=flagged_events.company_id
WHERE finished_events.company_id=$id
ORDER by finished_events.schedule, finished_events.timestamp
我尝试过使用 FULL JOIN、LEFT JOIN 和 RIGHT JOIN 均不成功。具体来说,我想要得到的是以下代码的共同努力:
$sql = "SELECT *
FROM finished_events
WHERE company_id=$id
ORDER by schedule, time_stamp";
$flagged_sql = "SELECT *
FROM flagged_events
WHERE company_id=$id
ORDER by schedule, time_stamp";
这些表有点不同,所以 UNION 在这里不起作用。我可以发布虚拟数据库条目,但这不会有太大帮助,因为我需要两个表中的所有条目。表之间的 2 个链接是 company_id 和 schedule 列。基本上幕后发生的事情是将时间戳放入不同的表中,然后我将其处理为finished_events或flagged_events。标记的事件将需要用户对其进行处理,直到它成为一个完成的事件。所以这个脚本正在为 GUI 生成数据,因此我需要查询这两个表并创建一个关联的客户详细信息数组,然后是一个事件数组(来自这两个表)。所以创建 assoc_array 没问题我只需要让这个查询吐出所有事件并正确排序。
编辑 SQL 小提琴:http ://sqlfiddle.com/#!2/d4c30/1 这几乎修复了它但不太正确,它重复底部的条目