我有这样的疑问:
UPDATE MY_TABLESET ENDTIME = COALESCE(:ENDTIME, ENDTIME),
ELAPSEDTIME = EXTRACT(DAY FROM :ENDTIME - STARTTIME) || 'd '
|| TO_CHAR(EXTRACT(HOUR FROM :ENDTIME - STARTTIME), 'FM00') || ':'
|| TO_CHAR(EXTRACT(MINUTE FROM :ENDTIME - STARTTIME), 'FM00') || ':'
|| TO_CHAR(EXTRACT(SECOND FROM :ENDTIME - STARTTIME), 'FM00.000000')
WHERE MISSIONID = :MISSIONID
但我正在努力更好地构建它们。
最近我们团队遇到了一个“问题”,我们必须花费大量时间重做查询,因为它们写得非常糟糕且难以理解。因此,作为个人目标,我正在努力变得更好。
对于这个例子,我想尝试做这样的事情:
UPDATE MY_TABLE
SET ENDTIME = COALESCE(:ENDTIME, ENDTIME),
TIMEDIFFERENCE = :ENDTIME - STARTTIME,
ELAPSEDTIME = EXTRACT(DAY FROM TIMEDIFFERENCE ) || 'd ' || TO_CHAR(
EXTRACT(HOUR FROM TIMEDIFFERENCE ), 'FM00') || ':' || TO_CHAR(
EXTRACT(MINUTE FROM TIMEDIFFERENCE ), 'FM00') || ':' || TO_CHAR(
EXTRACT(SECOND FROM TIMEDIFFERENCE ), 'FM00.000000')
WHERE MISSIONID = :MISSIONID
我正在要求这个,但任何提示或想法都非常感激。
提前致谢!
这是一个格式问题。
一个选择是手动执行此操作,但是 - 如今,没有人这样做,因为......
...我相信每个人都使用一些提供格式化功能的 GUI 工具(例如 Oracle SQL Developer、TOAD 等)(这将是第二个选项)
您可以根据需要调整格式选项,例如
我不知道你是否可以让它们格式化代码完全如你的示例所示,但我想 - 即使你使用默认格式选项 - 它看起来也不错
请注意,团队中的每个人都应该拥有相同的工具和相同的格式选项;不然结果会不一样
最后,我能想到的第三个选项是(免费)在线格式化程序
之一