This will get everything from the "Left" table which is Videos - try and match it up to the VideoTags table based on the VideoId. Then it will restrict the results to those where the tag is in (10, 11, 12) or if there were no TagId's
select *
from Videos V
left join VideoTags VT
on V.VideoId = VT.VideoId
where V.CreatorUserId in (1,2,3)
and (VT.TagId in (10, 11, 12) OR TagId is null)
Original answer - where the description matched the query - but it didn't solve the question
This will get everything from the "left" table - which is videos - where the CreatorId is in (1,2,3) and match it up to any VideoTags where the TagId is in (10,11,12) if it can't match to a VideoTag it'll return null for the VideoTag columns
select *
from Videos V
left join VideoTags VT
on V.VideoId = VT.VideoId
and V.CreatorUserId in (1,2,3)
and VT.TagId in (10, 11, 12)