Это выглядит , как будто вы пытаетесь вернуть все значения SomeTable, если на вкладке нет соответствующего значения, где C не равно NULL - в этом случае должно работать следующее:
SELECT * FROM SomeTable st
WHERE NOT EXISTS
(SELECT 1 FROM Tab t1 WHERE (t1.A = st.A OR t1.B = st.A) AND t2.C IS NOT NULL)
Однако это не точно , что делает ваш существующий запрос - в вашем запросе, если на вкладке есть две соответствующие записи, где одна запись имеет ненулевое значение для C, а другая - NULL, Ваш запрос вернет соответствующую строку, но мой запрос не будет.