You might want to try something like the following, my syntax may not be
perfect. Since there are 2 inline selects, the overall select will be from
sys.dual if you combine the 2, but again may have the syntax incorrect.

Run

select person_id from table1 A where not exists
Select 1 from table2 B where B.Person_Id = A.Person_Id;

And

select department from table1 A where not exists
Select 1 from table2 B where B.department = A.department;

As queries, review the output, and go from there.

Based on your output, I dunno how you want to choose which person_id is with
which department, maybe I misunderstood.

Select * from
( select (select person_id from table1 A where not exists
Select 1 from table2 B where B.Person_Id = A.Person_Id)Person_Id
(select department from table1 A where not exists
Select 1 from table2 B where B.department = A.department) Department )
From sys.dual);

Minus will not work because the department names are different on both tables.

For the result, I need to find all the employees that share the department in Table1 and verify if those employees have the same department(department name is different on table 2) associated with them in Table2.

For example: Person_id - 234 is assigned "Marketing" department on table 1, and there is one more person_id (678) with the same department on table 1.

The person_id - 678 does not exist on Table2; so I would like to pull this person for my result with the department name(S&M) from table 2.

You have said that MINUS would not work because the department names are different. It seems that the simplest solution is adding a name mapper. I would argue that your system is just screaming at you to create this as a permanent table anyway. With that addition then the query you need becomes a simple MINUS operation.: