Clase para hacer consultas con estamentos de MySQLi
### Índice **[Iniciar](#iniciar)**
**[Insert](#insert)**
**[Select](#select)**
**[Where](#where)**
**[Update](#update)**
**[Delete](#delete)**
**[Consultas Simples](#consultas-simples)**
**[Order By](#order-by)**
**[Group By](#group-by)**
**[Join](#join)**
**[Consultas Complejas](#consultas-complejas)**
require_once ('Database.php');
$db = new Database('server', 'user', 'password', 'database');INSERT INTO EMPLEADOS (NOMBRE,APELLIDO,FECHA_NACIMIENTO, EMAIL, ROL) VALUES ('Nuevo','Empleado','1990-02-16','nuevo@empleado.com',2) if ($db->insert([
"NOMBRE" => "Nuevo",
"APELLIDO" => "Empleado",
"FECHA_NACIMIENTO" => "1990-02-16",
"EMAIL" => "nuevo@empleado.com",
"ROL" => 2
])
->into("EMPLEADOS")
->exec()
) {
echo("Nuevo empleado insertado correctamente");
}SELECT NOMBRE FROM EMPLEADOS $db->select("NOMBRE")
->from("EMPLEADOS")
->then(function ($empleados) {
foreach ($empleados as $empleado) {
echo $empleado['NOMBRE'];
}
});SELECT NOMBRE FROM EMPLEADOS$nombre = $db->select("NOMBRE")
->from("EMPLEADOS")
->storage();
var_dump($nombre);SELECT NOMBRE, EMAIL FROM EMPLEADOS WHERE ID=4$nombreYemail = $db->select(["NOMBRE", "EMAIL"])
->from("EMPLEADOS")
->where(["ID" => 4])
->then(function ($empleados) {
return $empleados[0]["NOMBRE"] . " con email " . $empleados[0]["EMAIL"];
});
var_dump($nombreYemail);SELECT NOMBRE FROM EMPLEADOS LIMIT 5$db->select("NOMBRE")
->from("EMPLEADOS")
->limit(5)
->then(function ($empleados) {
foreach ($empleados as $empleado) {
echo $empleado['NOMBRE'];
}
});SELECT NOMBRE FROM EMPLEADOS LIMIT 2,5$db->select("NOMBRE")
->from("EMPLEADOS")
->limit(2,5)
->then(function ($empleados) {
foreach ($empleados as $empleado) {
echo $empleado['NOMBRE'];
}
});SELECT NOMBRE FROM EMPLEADOS WHERE ID=5$db->select("NOMBRE")
->from("EMPLEADOS")
->where(['ID' => 5])
->then(function ($empleados) {
foreach ($empleados as $empleado) {
echo $empleado['NOMBRE'];
}
});```sql SELECT NOMBRE FROM EMPLEADOS WHERE ID<=5 ```
$db->select("NOMBRE")
->from("EMPLEADOS")
->where(['ID' => ['<=', 5]])
->then(function ($empleados) {
foreach ($empleados as $empleado) {
echo $empleado['NOMBRE'];
}
});SELECT NOMBRE FROM EMPLEADOS WHERE ID<=5 AND DATE(FECHA_NACIMIENTO)<'1970-01-01'$db->select("NOMBRE")
->from("EMPLEADOS")
->where([
'ID' => ['<=', 5],
'DATE(FECHA_NACIMIENTO)' => ['<', '1970-01-01']
])
->then(function ($empleados) {
foreach ($empleados as $empleado) {
echo $empleado['NOMBRE'];
}
});SELECT NOMBRE FROM EMPLEADOS WHERE ID<=5 OR DATE(FECHA_NACIMIENTO)>'1994-01-01'$db->select("NOMBRE")
->from("EMPLEADOS")
->where(['ID' => ['<=', 5]])
->orWhere(['DATE(FECHA_NACIMIENTO)' => ['>', '1994-01-01']])
->then(function ($empleados) {
foreach ($empleados as $empleado) {
echo $empleado['NOMBRE'];
}
});UPDATE EMPLEADOS SET EMAIL='email@dementira.com' WHERE EMAIL='nuevo@empleado.com' if ($db->update("EMPLEADOS")
->set(["EMAIL" => "email@dementira.com"])
->where(["EMAIL" => "nuevo@empleado.com"])
->exec()
) {
echo("todos los nuevo@empleado.com ahora son email@dementira.com");
}DELETE FROM EMPLEADOS WHERE EMAIL='email@dementira.com' AND NOMBRE='Nuevo' if ($db->delete("EMPLEADOS")
->where([
"EMAIL" => "email@dementira.com",
"NOMBRE" => "Nuevo"
])
->exec()
) {
echo("todos los empleados Nuevo con email email@dementira.com han sido eliminados");
}CREATE TABLE PERSONS(PersonID int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255)) if ($db->simpleQuery("CREATE TABLE PERSONS(PersonID int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255));"))
echo "Tabla PERSONS creada";DROP TABLE PERSONS if ($db->simpleQuery("DROP TABLE PERSONS;"))
echo "Tabla Persons borrada";SELECT NOMBRE FROM EMPLEADOS ORDER BY DATE(FECHA_NACIMIENTO)$db->select("NOMBRE")
->from("EMPLEADOS")
->orderBy("FECHA_NACIMIENTO")
->then(function ($empleados) {
foreach ($empleados as $empleado) {
echo $empleado['NOMBRE'];
}
});SELECT NOMBRE FROM EMPLEADOS ORDER BY DATE(FECHA_NACIMIENTO) DESC$db->select("NOMBRE")
->from("EMPLEADOS")
->orderBy("FECHA_NACIMIENTO", "DESC")
->then(function ($empleados) {
foreach ($empleados as $empleado) {
echo $empleado['NOMBRE'];
}
});SELECT COUNT(*) FROM EMPLEADOS GROUP BY ROL$num = $db->select("COUNT(*)")
->from("EMPLEADOS")
->groupBy("ROL")
->storage();
var_dump($num);SELECT COUNT(*),DESCRIPCION FROM EMPLEADOS INNER JOIN ROLES ON EMPLEADOS.ROL=ROLES.ID_ROL GROUP BY ID_ROL$db->select(["COUNT(*)", "DESCRIPCION"])
->from("EMPLEADOS")
->join([["EMPLEADOS" => "ROL"], ["ROLES" => "ID_ROL"]])
->groupBy("ID_ROL")
->then(function ($datos) {
foreach ($datos as $dato) {
echo "[" . $dato['DESCRIPCION'] . "/" . $dato['COUNT(*)'] . "]-";
}
});SELECT ID, NOMBRE, APELLIDO, DESCRIPCION FROM EMPLEADOS
INNER JOIN ROLES ON EMPLEADOS.ROL=ROLES.ID_ROL
WHERE ID<10 AND NOMBRE='Carly'
OR DATE(FECHA_NACIMIENTO)>'1990-01-01' AND NOMBRE='Richard'
OR DESCRIPCION='INVITADO' AND NOMBRE='Brooke'
ORDER BY NOMBRE
LIMIT 1, 2$empleado = $db->select(["ID", "NOMBRE", "APELLIDO", "DESCRIPCION"])
->from("EMPLEADOS")
->join([["EMPLEADOS" => "ROL"], ["ROLES" => "ID_ROL"]])
->where([
"ID" => ["<", 10],
"NOMBRE" => "Carly"
])
->orWhere([
"DATE(FECHA_NACIMIENTO)" => [">", "1990-01-01"],
"NOMBRE" => "Richard"
])
->orWhere([
"DESCRIPCION" => "INVITADO",
"NOMBRE" => "Brooke"
])
->orderBy("NOMBRE")
->limit(1, 2)
->then(function ($empleados) {
foreach ($empleados as $empleado) {
if ($empleado['ID'] * 3 > 200)
return $empleado;
}
});
var_dump($empleado);