När det gäller att ersätta 8796093055031 kan du bara använda den första satsen som en underfråga i den andra satsen:
SELECT DISTINCT m.TYPEPKSTRING
FROM METAINFORMATIONS m
LEFT OUTER JOIN CAT2CATREL d
ON m.TYPEPKSTRING = d.TYPEPKSTRING
WHERE d.sourcepk IS NULL AND
d.targetpk IS NULL AND
m.typepkstring IN (SELECT DISTINCT m2.TYPEPKSTRING
FROM METAINFORMATIONS m2
LEFT OUTER JOIN COMPOSEDTYPES c2
ON m2.TYPEPKSTRING = c2.PK
WHERE c2.PK IS NULL);
Vad gäller resten, om jag förstår vad du försöker göra verkar det för mig som att du måste använda dynamisk SQL som visas i svaret på din tidigare fråga.