Как использовать запросы Select в PHP/SQL
В данном руководстве мы рассмотрим, как использовать инструкции SELECT в PHP.
Зачем нужно использовать SELECT?
Оператор SELECT используется для извлечения данных из одной или нескольких таблиц. Это R в CRUD (create, read, update, delete).
Синтаксис SELECT
SELECT column1, column2, column3 FROM Table1
В приведенном выше примере column1, column2 и column3 - это столбцы, из которых вы хотите выбрать данные. Имя таблицы - это название таблицы, из которой вы выбираете данные.
Чтобы выбрать одно из всех полей, используйте следующий синтаксис:
SELECT * FROM table name
Пример SELECT для столбца
Чтобы выбрать только из полей FirstName и LastName из таблицы Students, используйте следующий синтаксис.
SELECT FirstName, LastName From Students
Пример SELECT *
Следующая инструкция select позволяет выбрать все столбцы из таблицы students:
SELECT * FROM Students
Выборка данных с помощью MySQLi
В следующем примере из таблицы Customers выбираются customer_id, first_name и last_name. База данных называется myDB.
<?php
$DBHOST = "localhost";
$DBUSER = "root";
$DBPWD = "";
$DBNAME = "myDB";
$conn = new mysqli($DBHOST, $DBUSER, $DBPWD, $DBNAME);
if ($conn->connect_error) {
die("Ошибка соединения: " . $conn->connect_error);
}
$sql = "SELECT customer_id, first_name, last_name FROM Customers";
$result = $conn->query($sql);
if($result->num_rows) {
while($row = $result->fetch_assco()) {
echo "id: " . $row["customer_id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "Нет записей";
}
$conn->close();
?>
Построчное объяснение кода
Сначала мы вводим учетные данные для входа в систему, чтобы настроить наше соединение. $DBHOST, $DBUSER, $DBPWD требуются XAMPP для доступа и одинаковы для каждого проекта. $DBNAME - это единственная "уникальная" часть учетных данных для входа в систему, которая представляет собой имя нашей базы данных. В данном случае название базы myDB.
Затем мы пишем инструкцию SQL, которая выбирает столбцы customer_id, first_name и last_name из нашей таблицы Customers. Здесь мы имеем ввиду что нам нужны записи содержащие customer_id, first_name, last_name.
После того, как мы записали желаемую инструкцию SQL в $sql, мы затем запрашиваем результаты в таблице Customers с помощью $conn->query($sql).
В следующей части, связанной с функцией fetch_assoc(), говорится, что если возвращено больше нуля строк, то результаты объединяются в ассоциативный массив, который мы можем перебирать циклически.
Мы используем while() для циклического просмотра массива и используем соответствующие выходные данные customer_id, first_name и last_name.
Процедурный синтаксис MySQLi
В следующем примере используется та же идея, что и в приведенном выше, за исключением того, что на этот раз мы используем процедурный синтаксис.
<?php
$DBHOST = "localhost";
$DBUSER = "root";
$DBPWD = "";
$DBNAME = "myDB";
$conn = mysqli_conn($DBHOST, $DBUSER, $DBPWD, $DBNAME);
if ($conn->connect_error) {
die("Ошибка соединения: " . $conn->connect_error);
}
$sql = "SELECT customer_id, first_name, last_name FROM Customers";
$result = mysqli_query($sql);
if(mysqli_num_rows($result)>0) {
while($row = mysql_fetch_assco($result)) {
echo "id: " . $row["customer_id"]. " - Имя: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "Записей не найдено";
}
mysqli_close($conn);
?>
Как вы можете видеть, за исключением некоторых незначительных изменений синтаксиса, общая идея остается той же.
И в заключении, SELECT - это способ получить несколько нужных записей из таблицы в нашей базе данных.
Комментарии
Для того чтобы оставить свое мнение, необходимо зарегистрироваться на сайте