gpt4 book ai didi

MySQL 引用,以避免重复我自己?

转载 作者:可可西里 更新时间:2023-11-01 07:06:58 28 4
gpt4 key购买 nike

我有这个片段:

SELECT 
CASE WHEN
AVG(UNIX_TIMESTAMP(tDone)-UNIX_TIMESTAMP(tIPN))/3600 >= 10
THEN
ROUND(AVG(UNIX_TIMESTAMP(tDone)-UNIX_TIMESTAMP(tIPN))/3600,0)
ELSE
ROUND(AVG(UNIX_TIMESTAMP(tDone)-UNIX_TIMESTAMP(tIPN))/3600,1)
END
FROM
...

我可以做些什么来从中删除重复项吗?例如,沿着这些方向的东西:(假设代码如下):

SET var = AVG(UNIX_TIMESTAMP(tDone)-UNIX_TIMESTAMP(tIPN))/3600
SELECT
CASE WHEN
var > 10
THEN
ROUND(var,0)
ELSE
ROUND(var,1)
END
FROM
...

最佳答案

使用子查询你可以做这样的事情:

SELECT 
CASE WHEN avgtiPN >= 10 THEN ROUND(avgtiPN,0) ELSE ROUND(avgtiPN,1) END
FROM
(SELECT
AVG(UNIX_TIMESTAMP(tDone)-UNIX_TIMESTAMP(tIPN))/3600 AS avgtiPN
FROM
...) AS AVGQuery

但我仍然不确定它是否更具可读性。

关于MySQL 引用,以避免重复我自己?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34004465/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com