1
2つの結果セットの期間が必要です。最初のセットには、給与計算が終了した期間と、有効期間が1つのみの第2のセットが含まれます。だから私は昇順にアクティブ期間を導出するために2番目のセットで順序を行います。しかし、私は常にUnion Keywordの近くで "Incorrect Syntax"を取得します。私はこれについて何が起こっているのかを追跡することができません。SQL ServerのToadでUnion Allを使用したOrder By節で作業するときの構文エラー2016
SELECT SysId AS PeriodId,
[Name] AS PeriodName,
Number AS PeriodNumber,
[Year] AS PeriodYear,
PayrollSetId AS PayrollSetId
FROM (SELECT p.SysId AS PeriodId,
p.[Name] AS PeriodName,
p.Number AS PeriodNumber,
p.[Year] AS PeriodYear,
p.PayrollSetId AS PayrollSetId
FROM PeriodPayrollSetLookupView p
WHERE p.Closed = 1
UNION ALL
SELECT TOP 1
p.SysId AS PeriodId,
p.[Name] AS PeriodName,
p.Number AS PeriodNumber,
p.[Year] AS PeriodYear,
p.PayrollSetId AS PayrollSetId
FROM PeriodPayrollSetLookupView p
WHERE isnull (p.Closed, 0) = 0
ORDER BY p.[Year], p.[Name]
UNION ALL
SELECT '00000000-0000-0000-0000-000000000000' AS PeriodId,
'<Select...>' AS PeriodName,
NULL AS PeriodNumber,
NULL AS PeriodYear,
'00000000-0000-0000-0000-000000000000' AS PayrollSetId)AS PERIOD
ORDER BY [Year] DESC, Number DESC
非常に助かります。
ありがとうございます。これは私のために働いた。 –
お寄せいただきありがとうございます! :) –