select
  z.driver_first_name,
  z.driver_family_name
from
  (
    select
      b.first_name as driver_first_name,
      b.family_name as driver_family_name
    from
      driver a
      join
      person b
      on a.person_id = b.id
    intersect
    select
      d.first_name as passenger_first_name,
      d.family_name as passenger_family_name
    from
      passenger c
      join
      person d
      on c.person_id = d.id
  ) z
  except
  select
    x.driver_first_name,
    x.driver_family_name
  from
    (
      select
        b.first_name as driver_first_name,
        b.family_name as driver_family_name
      from
        driver a
        join
        person b
        on a.person_id = b.id
    ) x,
    (
      select
        d.first_name as passenger_first_name,
        d.family_name as passenger_family_name
      from
        passenger c
        join
        person d
        on c.person_id = d.id
    ) y
  where
    x.driver_first_name = y.passenger_first_name and
    x.driver_family_name = y.passenger_family_name;
