web-base/Core/Driver/SQL/Join/Join.class.php
2022-11-26 23:57:28 +01:00

34 lines
1.1 KiB
PHP

<?php
namespace Core\Driver\SQL\Join;
use Core\Driver\SQL\Column\Column;
use Core\Driver\SQL\Condition\Compare;
class Join {
private string $type;
private string $table;
private string $columnA;
private string $columnB;
private ?string $tableAlias;
private array $conditions;
public function __construct(string $type, string $table, string $columnA, string $columnB, ?string $tableAlias = null, array $conditions = []) {
$this->type = $type;
$this->table = $table;
$this->columnA = $columnA;
$this->columnB = $columnB;
$this->tableAlias = $tableAlias;
$this->conditions = $conditions;
array_unshift($this->conditions , new Compare($columnA, new Column($columnB), "="));
}
public function getType(): string { return $this->type; }
public function getTable(): string { return $this->table; }
public function getColumnA(): string { return $this->columnA; }
public function getColumnB(): string { return $this->columnB; }
public function getTableAlias(): ?string { return $this->tableAlias; }
public function getConditions(): array { return $this->conditions; }
}