Ajuda Com Criteria (Union)

Estou querendo saber qual seria a melhor forma de resolver meu problema, estou conseguindo montar um $criteria, mas estava precisando de algo a mais e não sei como fazer.

Tenho uma tabela de Física(‘individual’) e essas físicas podem ter vínculo com uma Jurídica(‘corporation’). Estou fazendo a Seguinte criteria:




$now = date('Y-m-d H:i:s');

            

$criteria->together = true;

$criteria->select = 'person_full_name';

	$criteria->with = array(

		'individual'=> array(

                'select' => 'individual_registry',

		'joinType' => 'INNER JOIN',

		'with' => array(

                        'linkCorporationIndividuals' => array(

                            'select' => '',

                            'on' => "start_date_link <= '$now' AND end_date_link >= '$now'",

                            'joinType' => 'LEFT JOIN',

                            'with' => array(

                                'idCorporation' => array(

                                    'select' => '',

                                    'joinType' => 'LEFT JOIN',

                                    'with' => array(

                                        'idPerson' => array(

                                            'select' => 'person_full_name',

                                            'on' => "idPerson.status = 'A'",

                                            'joinType' => 'LEFT JOIN',

                                        ),

                                    ),

                                ),

                            ),

                        ),

		),

	),

);



Esse criteria está trazendo o resultado esperado(trazendo todas as minha pessoas Físicas e duplicando o registro caso elas tenham vínculo com mais de uma empresa e vindo em branco caso não tenham)

O meu problema é que eu quero que além de aparecer o registro com o vínculo, gostaria que aparecesse o registro sem ele também. Ex.:

Física Jurídica

Victor ------------

Victor Teste

Victor Teste2

Alfredo ------------

Nesse caso mesmo se Victor tiver um vínculo, ainda vai mostrar uma linha vazia o que eu acho que dá para ser feito com o UNION, no qual eu uniria o criteria mencionado (alterando os LEFT para INNER JOIN) e uniria o resultado de uma pesquisa simples na tabela de Física, que me traria os registros que eu estou precisando.

Ai que vem o problema, não sei como realizar o UNION. Usei uma função chamada mergeWith() do criteria, mas não apareceu UNION nenhum.

Alguém aí tem alguma idéia?

Olá, seguinte, para vc fazer um union vc tem que fazer um criteria, depois o outro com a outra tabela ou consulta que vc quer unificar, e ae sim unir as duas com o mergeWith, fica algo semelhante a isto.


$criteria = new CDbCriteria;

$criteria->addCondition('t.id = :id1');

$criteria->params = array(':id1' => 1);


$criteria2 = new CDbCriteria;

$criteria2->addCondition('t.id = :id2');

$criteria2->params = array(':id2' => 2);


$criteria2->mergeWith($criteria1, false);


Model_name::model()->findAll($criteria2);