想要SQL解决方案的解决方案。 得到了一个以“ Days and Miles”为标题的表格。 想要获得表中的最高值。 有时,如果车辆在某个特定的日子不起作用,则该值将以英里为“ NULL”。 最大值应在“ NULL”值之后计算。 先前的最高值将被忽略,并且必须在“ NULL”值之后计算最高值。 请提供相同的SQL查询。
表中出现NULL后,Iam无法获得找到最大值的解决方案。数据是串联的,并且在出现NULL之后,应该在出现NULL值之后计算出最大值。它将是100,200,300,0,100。在这种情况下,出现NULL或0后出现100,而100为MAX
答案 0 :(得分:1)
如果可能,您应该尝试发布表格的样本以及预期结果。
但是,我相信以下查询可以解决您的问题(如果我正确理解的话)
SELECT
MAX(MILES)
FROM
TABLE
WHERE
DAYS > (
SELECT MAX(DAYS) FROM
TABLE
WHERE MILES IS NULL);
答案 1 :(得分:0)
只需使用MAX()
。它的用法如下:
SELECT MAX(<column>) FROM <table>;
SELECT MAX(<column>) FROM <table> GROUP BY <other column>;
如果您只想选择最高的Mile值,则可以这样做:
SELECT MAX(Miles) FROM YOUR_TABLE
或
SELECT MAX(Miles) as MAX_MILES FROM YOUR_TABLE
很难解释您的实际需求。从我所能收集到的信息来看,这可能是您正在寻找的东西:
SELECT MAX(Miles) as MAX_MILES FROM YOUR_TABLE WHERE Days = (SELECT MAX(Days) FROM
YOUR_TABLE WHERE Miles = NULL OR 0)