[英]How can I get the max value of multiple columns (and value of stringcolumn where datecolumn is max) and combine it into a single query?
如何在SQL中执行此操作?
这是我的示例数据:
ColA ColB ColC ColD ColE
---- ---- ---- ---- ----
TR12 25 67 yey
TR11 28 99 apr 2/2/2013
TR12 78 55 apr 2/2/2013
TR12 20 35 olf 2/5/2013
条件是在ColB中获得最大值,在ColC中获得某个值。
对于ColD和ColE值,我想从具有最大ColE值的行中获取它们。
ColA ColB ColC ColD ColE
---- ---- ---- ---- ----
*TR12* 25 *67* yey
TR11 28 99 apr 2/2/2013
TR12 *78* 55 apr 2/2/2013
TR12 20 35 *olf* *2/5/2013*
因此,我的预期结果将是这样的:
ColA ColB ColC ColD ColE
---- ---- ---- ---- ----
TR12 78 67 olf 2/5/2013
到目前为止,这就是我可以在其中返回列的正确最大值的全部功能,但是基于ColE是max value的行返回字符串呢? 当我为ColD执行max()函数时,得到的值不正确。 我得到的是另一个单词,而不是ColE最大的单词。
SELECT
ColA, max(ColB) as ColB, max(ColC) as ColC,
max(ColD) as ColD, -- this is where I got it wrong,
this should return the string where its ColE is the maximum
max(ColE) as ColE
FROM
dbo.SomeTable
WHERE
ColA = 'TR12'
我真的希望您能帮到我。
感谢您的快速答复。
你还好 尽管继续。 max()聚合函数适用于字符串以及数字。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.