我知道慢查询日志,但这不只是针对超过最大执行时间的查询吗?我的问题略有不同(我认为)。
我正在运行以下查询,对我来说它似乎不应该出现问题。但是当我运行它时,“运行”时间超过 20 秒,然后它就在那里“抓取”了很长时间!由于数据库性能问题,我不得不停止它。
谁能解释我在这里出错的地方。编码新手,所以请温柔。
SELECT
t1.oid,
(SELECT
DATE_FORMAT(t2.date,
'%d/%m/%y') AS 'AVF Date'
FROM
t2
WHERE
t1.oid = t2.fk_oid
AND t2.type = '-25'
AND YEAR(t2.date) BETWEEN 2005 AND 2014
ORDER BY t2.date ASC
LIMIT 1) AS 'AVF Date',
t2.site
FROM
t1
left join t2 on t1.oid=t2.fk_oid
更新 - 好的,所以我需要如下。我们有一个患者数据库,这些患者的程序记录在该数据库中。我正在尝试返回患者 oid (t1.oid) 以及他们拥有的 FIRST 程序(如果它是在 2005 年和 2014 年之间)以及他们拥有它的地方(分别为 t2.date 和 t2.site),但前提是程序属于特定类型 (t2.type = '-25')
所以基本上。所有在 2005 年至 2014 年间发生 AVF 的患者以及 AVF 的“部位”(在这种情况下是左臂/右臂等)
我希望这使它更清楚一点。
提前致谢。
米奇