如何设置顺序按使空行会为了基于掀起了后来约束
问题描述:
我有以下查询:如何设置顺序按使空行会为了基于掀起了后来约束
SELECT frst.FirstActionPath, scnd.SecondActionPath, frst.FirstIterationId, scnd.SecondIterationId,
frst.FirstTestRunId, scnd.SecondTestRunId, frst.FirstOrderId, scnd.SecondOrderId
FROM @FirstRunData frst
FULL JOIN @SecondRunData scnd
ON frst.FirstIterationId = scnd.SecondIterationId
AND frst.FirstActionPath = scnd.SecondActionPath
ORDER BY scnd.SecondIterationId, scnd.SecondOrderId, frst.FirstIterationID, frst.FirstOrderId
它给了我下面的结果:
顶部行是@FirstRunData表中的行,但与@SecondRunData行中的行不匹配。
我该如何更改我的订单,使额外的行位于FirstOrderId中的10000行之后?
答
您可能可以在ORDER BY子句中利用COALESCE。例如,
ORDER BY COALESCE(scnd.SecondIterationId, frst.FirstIterationID, 9999),
COALESCE(scnd.SecondOrderId, frst.FirstOrderId, 9999),
frst.FirstIterationID, frst.FirstOrderId
类似这样我的地址是您的示例,但您需要根据您对所有条件的要求进行更改。
太棒了!这工作完美。谢谢! – Vaccano 2011-03-28 05:50:55