Hi Nguyen,
I tested a demo and got expected result, but I'm not sure whether it could work for you, please test in your environment.
1. I set city of 5 contacts to Shanghai.

2. There is a segment which will include contacts whose last name contains Mao,
let's call it Mao segment.
I ran a customer journey for Mao, so only Clofly Mao has interaction data(Email sent) compared with other 4 records in advanced find result.
3. I created a segment 123, which will find people who live in Shanghai and at least received one email.

Member: only Clofly Mao in it.

4. I created another segment 1234567, it'll firstly find people who live in Shanghai, then exclude member(s) in segment 123.

As what we see, Clofly Mao has been excluded from new segment.
If these contacts are real people, then I can run campaign for them based on this segment.

Regards,
Clofly