Skip to content

Version 1.11.0

Choose a tag to compare

@davidsuarezcdo davidsuarezcdo released this 23 Apr 19:29
· 22 commits to master since this release
  • Se agregan nuevas funcionalidades al utilizar setTable y todas las funciones relacionadas con join. Desde ahora es posible enviarle un objeto de QueryBuilder para crear consultas con SubQuerys.

Ejemplos:

Subquerys

$builder = new MySqlBuilder();
$direcciones = $builder->select();
$direcciones->setTable("Direcciones");
$query = $builder->select();
$query->setTable(['D' => $direcciones])
->setColumns([
	'direccion_id' => 'D.id'
]);

Joins con Subquerys

$builder = new MySqlBuilder();
$query = $builder->select();
$query->setTable(['O' => 'OPERACIONES'])
	->setColumns([
		'operation_id' => 'O.id'
	]);

$direcciones = $builder->select();
$direcciones->setTable("DIRECCIONES")
	->setColumns([
		'direccion_id' => 'D.id'
	]);
$query->join( [ 'D' => $direcciones ], "D.id", "O.direccion_id");

Uniones dentro de un subquery

$builder = new MySqlBuilder();
$vanilla = $builder->select();
$vanilla->setTable("OPERACIONES");
$vanilla->setColumns([
	'id'
]);

$lite = $builder->select();
$lite->setTable("OPERACIONES_LITE");
$lite->setColumns([
	'id'
]);

$union = $builder->union();
$union->add($vanilla)->add($lite);

$query = $builder->query();
$query->setTable($union);
  • Se agrega orderBy() y algunos metodos más que sera necesario estudiarlos en su momento, en una instancia de union.
$builder = new MySqlBuilder();
$vanilla = $builder->select();
$vanilla->setTable("OPERACIONES");
$vanilla->setColumns([
	'id'
]);

$lite = $builder->select();
$lite->setTable("OPERACIONES_LITE");
$lite->setColumns([
	'id'
]);

$query = $builder->union();
$query->add($vanilla)->add($lite);
$query->orderBy( "id" );