AND NOT EXISTS (select ...)
サブクエリが行を返さないようにするために使用されます。通常、サブクエリが相関している場合(つまり、外部クエリの値を参照している場合)にのみ意味があります。そうでない場合は、すべての結果行に対してtrueになるか(実際にはクエリに影響しません)、またはすべての結果行(そして、あなたの場合のように、クエリは結果をまったく返しません)。私は考える 必要なものは次のとおりです:
AND members.member_ID NOT IN (select shares.member_ID from shares where shares.asset_ID = '224')