Consultas de fusión de Linq

Tengo dos consultas que me gustaría fusionar. Esta podría ser una combinación externa izquierda, pero parece diferente.

La primera consulta selecciona cosas distintas de una tabla:

var d = from d in db.Data
        select (d.ID, d.Label, Value = 0).Distinct;

Supongamos que esto devuelve lo siguiente:

{1,"Apple",0}
{2,"Banana",0}
{3,"Cabbage",0}

Luego tengo otra consulta que hace una selección diferente:

var s = from d in db.Data
        where d.Label != "Apple"
        select (d.ID, d.Label, d.Value);

Esto devuelve:

{2,"Banana",34}
{3,"Cabbage",17}

Luego quiero una tercera consulta que une los d y s en función de su ID y su etiqueta. Quiero que el resultado se vea así:

{1,"Apple",0}
{2,"Banana",34}
{3,"Cabbage",17}

Básicamente solo estoy actualizando los números en la tercera consulta, pero no tengo idea de cómo debería estar haciendo esto. Parece que debería ser una unión simple, pero no puedo hacer que funcione.

Respuestas a la pregunta(3)

Su respuesta a la pregunta