Jag lägger till det här svaret eftersom jag letade efter en lösning och inte hittade någon. Det här kanske inte svarar på exakt denna fråga eller kanske är det, men det kommer att hjälpa många andra där ute som jag.
Exempel. Om fältet med null är houseName och den är av typen string , lösningen kan vara så här
db.collectionName.createIndex(
{name: 1, houseName: 1},
{unique: true, partialFilterExpression: {houseName: {$type: "string"}}}
);
Detta kommer att ignorera null värden i fältet houseName och fortfarande vara unik.