Hi Claude,
See if that's what you want to do:
dataset2 = {<|"a" -> 1, "b" -> 3, "c" -> {1}|>, <|"a" -> 2, "b" -> 8,
"c" -> {2, 3}|>, <|"a" -> 3, "b" -> 0, "c" -> {3}|>, <|"a" -> 4,
"b" -> 1, "c" -> {4, 5}|>, <|"a" -> 5, "b" -> 12,
"c" -> {5, 6, 7}|>, <|"a" -> 6, "b" -> -3, "c" -> {}|>};
Prov2 = Table[
dataset2[[x, 1]] - dataset2[[x, 2]], {x, 1, Length@dataset2}];
Dataset@Join[{Join[Keys@dataset2[[1]], {"Prov"}]},
Table[Join[(Keys@dataset2[[1]] /. dataset2)[[y]], {Prov2[[y]]}], {y,
1, Length@Prov2}]]

Maybe there is another way to do it, but you can do it this way...