尽管您已经接受了该解决方案,但让我将此解决方案作为参考:
SELECt MyDate, Min(DateType)From( SELECt MyDate + T1.RecordType AS MyDate, T1.DateType FROM ( Select 1 AS RecordType, 2 AS DateType Union ALL Select 0 AS RecordType, 1 AS DateType Union ALL Select -1 AS RecordType, 2 AS DateType ) AS T1 CROSS JOIN myTable Where myTable.fkId = @MyFkId) AS CombinedTableGroup By MyDate
此解决方案的优势在于,仅查询一次myTable,在当前情况下,我们对fkID进行了过滤,因此现在的性能将无关紧要,但是,如果我们必须评估复杂的查询,则该技术就Union而言可以很好地工作。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)