我想知道为什么这会选择最小值。我知道 min 选择了一组中最小的数字,并且我清楚地定义了一个从中提取它的集合,这主要是x(d)
我不明白的。我无法自己重写代码,因为我真的不明白这些别名在做什么。谁能解释为什么该子查询有效?甚至只是提供参考?
select (select min(d)
from (values
(convert(date,t.enddate)),
(convert(date,r.enddate)),
(convert(date,e.enddate))
) x(d)) as enddate, t.name
from team t
join roster r on t.personid = r.personid
join enr e on t.personid = e.personid and r.rosterid = e.rosterid