Dave Mason explains what FIRST_VALUE() does:
Last week, I found myself with a T-SQL problem. A customer has a database where multiple “widget” records might exist in a table. End users might enter the duplicate rows, or they might be inserted by other automated processes. My task was to keep the most recent widget record. But, if there were any NULL values, look in the previous “duplicate” rows and use the most recent missing value for each column.
Click through to see it in action. And following up from Dave’s last point, IGNORE NULLS
did originate in Azure SQL Edge, though hopefully we see it in the next version of on-premises SQL Server.