SQL Server 2005 以降の場合
;WITH m AS ( SELECT Partnum, Formula, RevisionNum, rn = ROW_NUMBER() OVER (PARTITION BY PartNum ORDER BY CASE WHEN RevisionNum ='New' THEN 1 ELSE 2 END) FROM dbo.Material ) SELECT p.PartNum, m.Formula, m.RevisionNum FROM dbo.Parts AS p INNER JOIN m ON p.PartNum = m.PartNum WHERE m.rn = 1;
プレ>好奇心旺盛ですが、リビジョンが 26 を超える場合はどうすればよいでしょうか (たとえば、
Z
の後に何が来るか)。 )?