假设我有两张桌子。一个是FOLLOW_UP
,另一个是ENQUIRY
。我已加入表格,显示特定查询的最后一次跟进。
CREATE VIEW F_TOFOLLOW
AS
SELECT FOLLOW_UP.ID, FOLLOW_UP.LONGDATE, FOLLOW_UP.VISITOR_ID, ENQUIRY.UNAME,
FOLLOW_UP.FEED_BACK, FOLLOW_UP.FEED_BACK_SUMMARY,
FOLLOW_UP.FOLLOWUP_BY, FOLLOW_UP.NEXT_CONTACT, ENQUIRY.CREATE_BY, ENQUIRY.IS_MEMBER
FROM APP.FOLLOW_UP
INNER JOIN APP.ENQUIRY ON FOLLOW_UP.VISITOR_ID = ENQUIRY.ID
WHERE FOLLOW_UP.ID = (SELECT MAX(ID) FROM FOLLOW_UP F WHERE F.VISITOR_ID = FOLLOW_UP.VISITOR_ID)
此查询之前工作正常。但是在穿过大约40,000个数据后,它变得非常缓慢。查询本身有什么问题吗?或者我应该如何编写一个有效的查询来选择仅依赖于其他表的id的max id
。 ?