1
晚上好! 我有问题,因为我不能在WHERE和 ORDER BY中使用MAXGROWTHPARENT值。 我写了这条查询:POSTGRESQL:在WHERE子句中使用之前的计算值
SELECT PERSON.*,
(
SELECT MAX(PARENT.GROWTH)
FROM MAN PARENT
WHERE
(PARENT.ID = PERSON.ID_FATHER)
OR
(PARENT.ID = PERSON.ID_MOTHER)
) AS MAXGROWTHPARENT
FROM MAN PERSON
WHERE PERSON.GROWTH >
(
SELECT MAX(PARENT.GROWTH)
FROM MAN PARENT
WHERE
(PARENT.ID = PERSON.ID_FATHER)
OR
(PARENT.ID = PERSON.ID_MOTHER)
)
ORDER BY (PERSON.GROWTH -
(
SELECT MAX(PARENT.GROWTH)
FROM MAN PARENT
WHERE
(PARENT.ID = PERSON.ID_FATHER)
OR
(PARENT.ID = PERSON.ID_MOTHER)
)
);
我的代码看起来非常难看。你能告诉我如何在WHERE和ORDER BY子句中使用MAXGROWTHPARENT ?