SET can assign NULL as a visible value.

highlighted = computed this step

Explicit NULL assignment

SET can assign NULL as the new value in this finite model.

SET to NULL\text{SET to NULL}

Set note to NULL

The statement has 1 NULL assignment and changes 1 cell.

NULL assignments=1\text{NULL assignments}=1

UPDATE examples are tiny finite row modifications; SQL dialect completeness, joins in UPDATE, subqueries, triggers, constraints, transactions, locks, indexes, optimizer behavior, performance, and product behavior are out of scope.

Explicit NULL assignment: base rowsidownerstatuspointsnote1Adaopen10seed2Benopen20call3Cydone15NULL4DeeNULL5draft WHERE chooses rowssourcevaluecompareTotruthkeptForUpdate012FALSEno122TRUEyes232FALSEno342FALSEno SET assignmentscolumnnewValuenoteNULL Row-by-row updatesourcematchedassignmentsafter0no()(1, Ada, open, 10, seed)1yes({column:note, old:call, new:NULL})(2, Ben, open, 20, NULL)2no()(3, Cy, done, 15, NULL)3no()(4, Dee, NULL, 5, draft) Rows after UPDATEidownerstatuspointsnote1Adaopen10seed2Benopen20NULL3Cydone15NULL4DeeNULL5draft UPDATE factsfactvaluebaseRowCount4finalRowCount4matchedRowCount1setColumnCount1changedCellCount1nullAssignmentCount1updateStatusappliedwhereUnknownCount0

Read the output

The note cell becomes NULL because NULL was explicitly assigned.

NULL visible\text{NULL visible}

Summary

This is a cell value, not a request for a default.

explicit NULL\text{explicit NULL}