0
我想根据来自3页不同的表更新日期列记录进行排序, 我有一个followig组数据排序行的基础上,从不同的表中3分日期列在MySQL
Table A
Id data updatedOn
1 abc 2017-02-11 09:34:40
Table B
Id question updatedOn
1 xyz 2017-02-11 09:35:40
1 pqr 2017-02-11 09:40:40
Table C
Id quote updatedOn
1 300$ 2017-02-11 09:37:40
现在我的结果应该
Id question quote a.updatedOn b.updatedOn c.updatedOn
1 pqr 300 2017-02-11 09:34:40 2017-02-11 09:40:40 2017-02-11 09:37:40
但结果是
Id question quote a.updatedOn b.updatedOn c.updatedOn
1 xyz 300 2017-02-11 09:34:40 2017-02-11 09:35:40 2017-02-11 09:37:40
由于questio最近更新了pqr
。
我尝试下面的查询
SELECT a.updatedOn,b.updatedOn,c.updatedOn FROM `A` a
left join B b on a.id= b.id
left join C c on c.id = a.id
group by id having a.id = 7
order by ifnull(a.updatedOn,0)
DESC,ifnull(b.updatedOn,0) DESC,
ifnull(c.updatedOn,0) DESC
的问题是,如果我更新第一个表中的数据涉及在结果是确定的顶部,但如果我更新了第二和第三的第二次,它不会得到显示按预期的降序排列。
此外,我尝试上面的查询与日期列 GREATEST函数,但没有运气。
请帮忙。 谢谢。
那么究竟是什么问题? – Mureinik
以表格结构显示输出 – denny