Вы можете использовать in
в предложении on
:
SELECT u.*
FROM wp_users u LEFT JOIN
wp_usermeta um
ON u.ID = um.user_id AND
um.meta_key IN ('metakey1', 'metakey2', 'comments')
WHERE um.user_id IS NULL;
Вы не получите совпадений, только если все метакейсы отсутствуют, что, я думаю, именно то, о чем вы просите.
EDIT:
Вы, кажется, хотите:
SELECT u.*
FROM wp_users u
WHERE NOT EXISTS (SELECT 1
FROM wp_usermeta um
WHERE u.ID = um.user_id AND
um.meta_key IN ('metakey1', 'metakey2')
) AND
NOT EXISTS (SELECT 1
FROM wp_comments c
WHERE u.ID = c.user_id
);
Я предпочитаю NOT EXISTS
, если вы собираетесь проводить несколько сравнений с разными таблицами.