你可以试试这个
SELECt StudentName, CASE WHEN EC1 < 30 THEN EC1 + 7 ELSE EC1 END AS EC1, CASE WHEN EC2 < 30 THEN EC2 + 7 ELSE EC2 END AS EC2, CASE WHEN EC3 < 30 THEN EC3 + 7 ELSE EC3 END AS EC3, CASE WHEN EC4 < 30 THEN EC4 + 7 ELSE EC4 END AS EC4, CASE WHEN EC5 < 30 THEN EC5 + 7 ELSE EC5 END AS EC5, Total = (EC1 + EC2 + EC3 + EC4 + EC5), CASE WHEN EC1 < 23 AND EC2 < 23 THEN 'FAIL' WHEN EC1 < 23 AND EC3 < 23 THEN 'FAIL' WHEN EC1 < 23 AND EC4 < 23 THEN 'FAIL' WHEN EC1 < 23 AND EC5 < 23 THEN 'FAIL' WHEN EC2 < 23 AND EC3 < 23 THEN 'FAIL' WHEN EC2 < 23 AND EC4 < 23 THEN 'FAIL' WHEN EC2 < 23 AND EC5 < 23 THEN 'FAIL' WHEN EC3 < 23 AND EC4 < 23 THEN 'FAIL' WHEN EC3 < 23 AND EC5 < 23 THEN 'FAIL' WHEN EC4 < 23 AND EC5 < 23 THEN 'FAIL' ELSE 'PASS' END AS ResultFROM( SELECt * FROM Student) AS STPIVOT( SUM(Marks) For [Subject] IN (EC1, EC2, EC3, EC4, EC5)) AS PV
输出
Rahul 66 34 29 25 33 173 FAILRajesh 34 56 19 45 30 170 PASSSavita 50 55 45 34 30 207 PASSSmita 76 45 67 56 76 320 PASS



