Si tiene alguna pregunta sobre declaraciones SQL, consulte a un maestro. Envíe un correo electrónico a 657998105@qq.com.
Para resolver el tercer problema, necesitas usar la función de ventana over()
SELECT [apprentice_id]
,[apprentice_name]
,course_id
,course_name
,[max_result]
,SUM(max_result) over(PARTITION by apprentice_id) as Sum_result
,(SUM(max_result) over(PARTITION by apprentice_id))/(COUNT(apprentice_id) over(PARTITION by apprentice_id)) como Avg_result
FROM [master].[dbo].[TempTabel] p >
agrupar por apprentice_id
,[apprentice_name]
,[max_result]
,course_id
,course_name p >
Resultados de la consulta:
apprentice_id apprentice_name course_id course_name max_result Sum_result Avg_result
A1 Feng Xiaobao C4 pulido 75,00 338,00 84,500000
A1 Feng Xiaobao C3 revestimiento 80,00 338.00 84.500 000
A1 Feng Xiaobao C1 flaw detection 88.00 338.00 84.500000
A1 Feng Xiaobao C2 rust removal 95.00 338.00 84.500000
A2 Chen Xiaobao C1 flaw detection 54.00 208.00 69.333333
A2 Chen Xiaobao C4 Pulido 68.00 208.00 69.333333
A2 Chen Xiaobao C3 Recubrimiento 86.00 208.00 69.333333
A3 Chu Xiaobao C1 Detección de fallas 70.00 319.00 000
A 3 Chu Xiaobao C3 revestimiento 72,00 319,00 79,750000
A3 Chu Xiaobao C4 pulido 79,00 319,00 79,750000
A3 Chu Xiaobao C2 eliminación de óxido 98,00 319,00 79,750000
A4 Revestimiento Wei Xiaobao C3 42,00 128,0 0 64,000000
A4 Eliminación de óxido Wei Xiaobao C2 86,00 128,00 64,000000
A5 Eliminación de óxido Jiang Xiaobao C2 70,00 157,00 78,500000
A5 Jiang Xiaobao C4 pulido 87,00 157,00 78,500000 p>
A6 Shen Xiaobao C4 pulido 59,00 179,00 59,666666
A6 Shen Xiaobao C2 eliminación de óxido 60,00 179,00 59,666666
A6 Shen Xiaobao C3 revestimiento 60,00 179,00 59,666666
Referencia de función de ventana:/ lcxiaozi/article/details/6712797