Фактически, я полагаю, что вы хотите, чтобы 1 ряд стал условно 2 для целей подсчета, а корабль с двойным гражданством будет опущен на второй ряд.Конечно, вы можете запросить гражданство = 'US' или dual_citizenship = 'US', но хотите избежать двойного включения предиката.
Что-то вроде (имена таблиц не были предоставлены):
SELECT count(*)
FROM
(
SELECT id, citizenship
FROM yourTable
UNION ALL
SELECT id, dual_citizenship as citizenship
FROM yourTable
WHERE dual_citizenship is not null
) a
WHERE citizenship = 'US'
Если вы хотите, чтобы все страны:
SELECT citizenship, count(*)
FROM
(
SELECT id, citizenship
FROM yourTable
UNION ALL
SELECT id, dual_citizenship as citizenship
FROM yourTable
WHERE dual_citizenship is not null
) a
GROUP BY citizenship