如何将NULL值替换为SQL中一个类别的平均值?



我在列'revenues_from_appointment'中有一个null值的数据集

数据集

tbody> <<tr>
patient_idpracticer_idappointments ment_duration_minrevenues_from_appointment
2021-06-284273474830道明>
2021-06-294273774760150.0
2021-07-014273774760
2021-07-034273674830道明>
2021-07-034273574715道明>
2021-07-044273474830
2021-07-054273474830道明>
2021-07-104273874715道明>
2021-08-124273974830道明>

您可以使用AVG窗口函数,它将对感兴趣的三列进行分区,并使用COALESCE函数替换空值:

SELECT appointment_date,
patient_id,
practitioner_id,
appointment_duration_min,
COALESCE(revenues_from_appointment, 
AVG(revenues_from_appointment) OVER(PARTITION BY patient_id, 
practitioner_id, 
appointment_duration_min))
FROM tab

在这里试试。

相关内容

  • 没有找到相关文章

最新更新