gpt4 book ai didi

mysql - 选择两个表并按日期排序

转载 作者:行者123 更新时间:2023-11-29 13:47:26 24 4
gpt4 key购买 nike

我试图列出两个表doc_to_dodoc_bug_tracker的最新更新,下面是我的表结构

doc_to_do enter image description here

doc_bug_tracker enter image description here

这是我当前的查询:

$sth = $this->db->prepare('SELECT p.*, 
dtd.projects_id as dtd_projects_id, dtd.content as dtd_content, dtd.date_modified as dtd_date_modified,
dbt.projects_id as dbt_projects_id, dbt.content as dbt_content, dbt.date_modified as dbt_date_modified
FROM `projects` p LEFT JOIN `doc_to_do` dtd ON p.id=dtd.projects_id
LEFT JOIN `doc_bug_tracker` dbt ON p.id=dbt.projects_id
where p.id="'.$project_id.'"');

那么现在如何从表 doc_to_dodoc_bug_tracker 中按 date_modified 进行排序?

最佳答案

获取最新日期(而不是所有日期,按降序排列),请尝试以下操作:

SELECT
p.id,
MAX(GREATEST(dtd.date_modified, dbt.date_modified)) AS MaxDate
FROM projects p
LEFT JOIN doc_to_do dtd ON p.id = dtd.projects_id
LEFT JOIN doc_bug_tracker dbt ON p.id = dbt.projects_id
WHERE p.id = <project_id>
GROUP BY p.id

如果您的 SELECT 中需要其他列,请务必将它们包含在 GROUP BY 中。

关于mysql - 选择两个表并按日期排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17192362/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com