PHP | Cláusula WHERE de MySQL

La Cláusula WHERE se utiliza para filtrar solo aquellos registros que cumplen una condición específica dada por el usuario. en otras palabras, la cláusula SQL WHERE se usa para restringir el número de filas afectadas por una consulta SELECT, UPDATE o DELETE.

Sintaxis:
la sintaxis básica de la cláusula where es:
SELECT Column1, Column2, ….
FROM Table_Name
DONDE Condición

Implementación de la cláusula WHERE:

Consideremos la siguiente tabla “Datos” con tres columnas ‘Nombre’, ‘Apellido’ y ‘Edad’.

Para seleccionar todas las filas donde el “Firstname” es “ram”, usaremos el siguiente código:

Cláusula Where que utiliza el método de procedimiento:

<?php
$link = mysqli_connect("localhost", "root", "", "Mydb");
  
if($link === false){
    die("ERROR: Could not connect. "
                . mysqli_connect_error());
}
  
$sql = "SELECT * FROM Data WHERE Firstname='ram'";
if($res = mysqli_query($link, $sql)){
    if(mysqli_num_rows($res) > 0){
        echo "<table>";
            echo "<tr>";
                echo "<th>Firstname</th>";
                echo "<th>Lastname</th>";
                echo "<th>age</th>";
            echo "</tr>";
        while($row = mysqli_fetch_array($res)){
            echo "<tr>";
                echo "<td>" . $row['Firstname'] . "</td>";
                echo "<td>" . $row['Lastname'] . "</td>";
                echo "<td>" . $row['Age'] . "</td>";
            echo "</tr>";
        }
        echo "</table>";
        mysqli_free_result($res);
    } else{
        echo "No Matching records are found.";
    }
} else{
    echo "ERROR: Could not able to execute $sql. " 
                                . mysqli_error($link);
}
  
mysqli_close($link);
?>

Producción :

Explicación del código:

  1. La variable «res» almacena los datos que devuelve la función mysql_query() .
  2. Cada vez que se invoca mysqli_fetch_array() , devuelve la siguiente fila del conjunto res() .
  3. El bucle while se utiliza para recorrer todas las filas de la tabla «datos».

Cláusula Where utilizando el método orientado a objetos:

<?php
$mysqli = new mysqli("localhost", "root", "", "Mydb");
  
if($mysqli === false){
    die("ERROR: Could not connect. " 
                . $mysqli->connect_error);
}
  
$sql = "SELECT * FROM Data WHERE Firstname='ram'";
if($res = $mysqli->query($sql)){
    if($res->num_rows > 0){
        echo "<table>";
            echo "<tr>";
                echo "<th>Firstname</th>";
                echo "<th>Lastname</th>";
                echo "<th>Age</th>";
            echo "</tr>";
        while($row = $res->fetch_array()){
            echo "<tr>";
                echo "<td>" . $row['Firstname'] . "</td>";
                echo "<td>" . $row['Lastname'] . "</td>";
                echo "<td>" . $row['Age'] . "</td>";
            echo "</tr>";
        }
        echo "</table>";
        $res->free();
    } else{
        echo "No matching records are found.";
    }
} else{
    echo "ERROR: Could not able to execute $sql. " 
                                    . $mysqli->error;
}
  
$mysqli->close();
?>

Producción :

Cláusula Where usando el método PDO:

<?php
try{
    $pdo = new PDO("mysql:host=localhost;
                    dbname=Mydb", "root", "");
    $pdo->setAttribute(PDO::ATTR_ERRMODE, 
                        PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
    die("ERROR: Could not connect. " 
                    . $e->getMessage());
}
  
try{
    $sql = "SELECT * FROM Data WHERE Firstname='ram'"; 
    $res = $pdo->query($sql);
    if($res->rowCount() > 0){
        echo "<table>";
            echo "<tr>";
                echo "<th>Firstname</th>";
                echo "<th>Lastname</th>";
                echo "<th>Age</th>";
            echo "</tr>";
        while($row = $res->fetch()){
            echo "<tr>";
                echo "<td>" . $row['Firstname'] . "</td>";
                echo "<td>" . $row['Lastname'] . "</td>";
                echo "<td>" . $row['Age'] . "</td>";
            echo "</tr>";
        }
        echo "</table>";
        unset($res);
    } else{
        echo "No records matching are found.";
    }
} catch(PDOException $e){
    die("ERROR: Could not able to execute $sql. " 
                                   . $e->getMessage());
}
  
unset($pdo);
?>

Producción :

Publicación traducida automáticamente

Artículo escrito por Shubrodeep Banerjee y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *