sql-server-2008 – 怎样修改此t-sql查询以返回差异列名的最大值
发布时间:2021-03-14 16:32:43 所属栏目:编程 来源:网络整理
导读:我有以下查询: SELECT [Rate],[RateMon],[RateTue],[RateWed],[RateThu],[RateFri],[RateSat],[RateSun] FROM [Room] WHERE Id=@Id 而不是返回全部列,我只想返回Rate和RateMon,RateTue,RateWed,RateThu,RateFri,RateSat和RateSun之间的最大值,但我很难,由于
我有以下查询: SELECT [Rate],[RateMon],[RateTue],[RateWed],[RateThu],[RateFri],[RateSat],[RateSun] FROM [Room] WHERE Id=@Id 而不是返回全部列,我只想返回Rate和RateMon,RateTue,RateWed,RateThu,RateFri,RateSat和RateSun之间的最大值,但我很难,由于列名称差异. 此刻返回的示例功效是: 100,400,600,600 个中100是Rate,其他值对应Mon – Sun,但在这种环境下我想返回100和600. 办理要领SELECT [Rate],(SELECT MAX(T.[Rate]) FROM (VALUES([RateMon]),([RateTue]),([RateWed]),([RateThu]),([RateFri]),([RateSat]),([RateSun])) AS T([Rate]) ) AS MaxRate FROM [Room] WHERE Id=@Id (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |