From the Google official support site
DGETis the only database function that does not aggregate – it will return an error if the filtered data has either no matching elements or more than one matching element.
So yes. This is the expected behaviour.
As your best alternative would be to use the
=QUERY(M1:N,"select N where M='Daedalus I' ",1)
=QUERY(M11:N16,"select N where M matches 'Lucky M' ",1)
Of course you will argue
Daedalus I is not the same as
What happens with
You should think of
DGET as an alternative of the
where QUERY clause.
The sting comparison operators would be
DGET is an alternative for the
starts with in a
DGET does NOT aggregate.
Thus the error.
EDIT (after taking a look at your sheet)
You can also use
=QUERY(A1:B,"select B where A matches '"&D2&"' ",0)