Как MySQL базата данни търси данни в таблица?Изявление/Команда/Синтаксис на заявката

MySQL база данниКак да направя заявка за данните в таблицата?Изявление/Команда/Синтаксис на заявката

MySQL Данни за заявка

MySQL базите данни използват SQL SELECT оператори за запитване към данни.

Можете да правите заявки за данни в базата данни през прозореца на командния ред mysql> или чрез PHP скрипт.

граматика

Следното е общият SELECT синтаксис за запитване на данни в MySQL база данни:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • В оператора за заявка можете да използвате една или повече таблици, да разделяте таблиците със запетаи (,) и да използвате оператора WHERE, за да зададете условия на заявката.
  • Командата SELECT може да прочете един или повече записи.
  • Можете да използвате звездичка (*), за да замените други полета, операторът SELECT ще върне всички данни на полето на таблицата
  • Можете да използвате оператора WHERE, за да включите всяко условие.
  • Можете да укажете отместването на данните, при което операторът SELECT започва заявката с OFFSET.По подразбиране отместването е 0.
  • Можете да използвате свойството LIMIT, за да зададете броя на върнатите записи.

Вземете данни чрез командния ред

В следващия пример ще използваме командата SQL SELECT, за да получим данните от таблицата с данни на MySQL chenweiliang_tbl:

Инстанция

Следният пример ще върне всички записи на таблицата с данни chenweiliang_tbl:

Прочетете листа с данни:

select * from chenweiliang_tbl;

Използвайте PHP скрипт за получаване на данни

Използване на PHP функции mysqli_query() и SQL SELECT команда за получаване на данните.

Тази функция се използва за изпълнение на SQL команди и след това за предаване на PHP функции mysqli_fetch_array() за използване или извеждане на данни за всички заявки.

mysqli_fetch_array() Функцията взема ред от набора с резултати като асоциативен масив, или масив от числа, или и двете. Връща масив, генериран от редовете, взети от набора с резултати, или false, ако няма повече редове.

Следващият пример чете всички записи от таблицата с данни chenweiliang_tbl.

Инстанция

Опитайте следния пример, за да покажете всички записи на таблицата с данни chenweiliang_tbl.

Използвайте параметъра mysqli_fetch_array MYSQL_ASSOC за извличане на данни:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_ASSOC))
{
 echo "<tr><td> {$row['chenweiliang_id']}</td> ".
 "<td>{$row['chenweiliang_title']} </td> ".
 "<td>{$row['chenweiliang_author']} </td> ".
 "<td>{$row['submission_date']} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

 

В горния пример всеки ред от прочетени записи се присвоява на променливата $row и след това всяка стойност се отпечатва.

注意:Не забравяйте, че ако трябва да използвате променлива в низ, поставете променливата във фигурни скоби.

В горния пример вторият параметър на функцията PHP mysqli_fetch_array() е MYSQL_ASSOC, задайте този параметър за запитване към резултата за връщане на асоциативен масив, можете да използвате името на полето като индекс на масива.

PHP предоставя друга функция mysqli_fetch_assoc(), функцията взема ред от резултатния набор като асоциативен масив.Връща асоциативен масив, генериран от редовете, взети от набора с резултати, или false, ако няма повече редове.

Инстанция

Опитайте следния пример, който използва mysqli_fetch_assoc() функция за извеждане на всички записи на таблицата с данни chenweiliang_tbl:

Използвайте mysqli_fetch_assoc за извличане на данни:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_assoc 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_assoc($retval))
{
 echo "<tr><td> {$row['chenweiliang_id']}</td> ".
 "<td>{$row['chenweiliang_title']} </td> ".
 "<td>{$row['chenweiliang_author']} </td> ".
 "<td>{$row['submission_date']} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

Можете също да използвате константата MYSQL_NUM като втори параметър на функцията PHP mysqli_fetch_array(), която връща масив от числа.

Инстанция

Използват се следните примери MYSQL_NUM Параметърът показва всички записи на таблицата с данни chenweiliang_tbl:

Използвайте параметъра mysqli_fetch_array MYSQL_NUM за извличане на данни:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_NUM))
{
 echo "<tr><td> {$row[0]}</td> ".
 "<td>{$row[1]} </td> ".
 "<td>{$row[2]} </td> ".
 "<td>{$row[3]} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

Резултатите от горните три примера са еднакви.


освобождаване на паметта

Добра практика е да освободите паметта на курсора, след като сме изпълнили оператор SELECT.

Паметта може да бъде освободена чрез PHP функцията mysqli_free_result().

Следващият пример демонстрира използването на тази функция.

Инстанция

Опитайте следните примери:

Освободете памет с mysqli_free_result:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_NUM))
{
 echo "<tr><td> {$row[0]}</td> ".
 "<td>{$row[1]} </td> ".
 "<td>{$row[2]} </td> ".
 "<td>{$row[3]} </td> ".
 "</tr>";
}
echo '</table>';
// 释放内存
mysqli_free_result($retval);
mysqli_close($conn);
?>
 

Блог на Hope Chen Weiliang ( https://www.chenweiliang.com/ ) сподели „Как базата данни на MySQL прави запитвания към данните в таблицата?Изявление/команда/синтаксис на заявка“, за да ви помогне.

Добре дошли да споделите връзката към тази статия:https://www.chenweiliang.com/cwl-461.html

Добре дошли в канала на Telegram в блога на Chen Weiliang, за да получите най-новите актуализации!

🔔 Бъдете първите, получили ценното „Ръководство за използване на инструмента за изкуствен интелект за маркетинг на съдържание ChatGPT“ в горната директория на канала! 🌟
📚 Това ръководство съдържа огромна стойност, 🌟Това е рядка възможност, не я пропускайте! ⏰⌛💨
Споделете и харесайте, ако ви харесва!
Вашите споделяния и харесвания са нашата постоянна мотивация!

 

发表 评论

Вашият имейл адрес няма да бъде публикуван. Използват се задължителните полета * Етикет

превъртете до върха