我有3个数据库表:
openroheader公司
openrodata公司
奥普罗诺特斯
标题和数据每小时更新(覆盖)一次,同时手动添加注解,并通过字段“ro\ U编号”链接
我想让sql检索最新的“注解”(按“date\u updated”)
SELECT file_date, rod.id as id, key_id, key_name, key_value, DATE_FORMAT(expected_close_date , '%d/%m/%y' ) as expected_close_date, wty_dept
FROM OpenROHeader roh
JOIN OpenROData rod ON roh.id=rod.header_id
LEFT JOIN OpenRONotes ron ON rod.key_value=ron.ro_number
WHERE roh.customer_id='193'
GROUP BY key_id, key_name
notes表中有2个条目-我要最新的:
id, customer_id, ro_number, expected_close_date, advisor_notes, wty_dept, date_updated
4059, 193, 'S117986', NULL, 'WTY_ON<br>- S.W.', 'on', '2018-09-24 05:02:45'
4060, 193, 'S117986', NULL, 'WTY_OFF<br>- S.A.', NULL, '2018-09-24 05:03:24'
我希望它返回select from行中id为4060而不是4059的数据(最后2列)
http://sqlfiddle.com/#!9/f00326/1/0
但不是从2018-09-24 05:03:24返回最新的“wty\ U部门”(空)
我的sql语句正在返回2018-09-24 05:02:45(较早)的上一个条目“on”
如何对连接进行排序以返回最新数据
3条答案
按热度按时间f8rj6qna1#
我不认为你需要排序,只是确保没有一个稍后的评论。关于如何查找笔记,我做了一些假设,但假设我的假设是正确的,这应该可以为您完成(在我理解您的需求之后更新!)
bogh5gae2#
您可以从三个表的联接中获取最新的列,如下所示:
上面的查询返回了最新的记录,其中wty\u dept列为null。检查此项并享受编码:)!!
yqyhoc1h3#
例如,将desc放在groupby clouse后面-从student group by section desc中选择*;它会变硬的