我有一个函数可以使用两个 case 语句在视图之外工作。问题是由于这个 case 语句,运行该函数需要 25 秒以上。因为它应该只需要大约 3 秒(与具有不调用 case 语句的视图的相同函数相比。)
case 语句在 select 中完成。
有趣的是(对我来说),如果我将其中一个案例陈述更改为直接的内容,即 D.CARS 而不是
CASE WHEN D.CAR IS NOT NULL
THEN D.CAR
ELSE C.CAR
END AS CAR,
然后它会加速约 3 秒来运行该功能,但会显示一些关闭的结果。因此,如果 select 语句中有两个 case 语句,似乎只需要 25 秒。
无论案例语句的数量如何,视图的填充时间都不会少于 1 秒。
有没有办法加快速度,同时仍然获得正确的结果?