PHP & MySQL数据库专题 第五课 数据查询

Posted 我是小白呀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP & MySQL数据库专题 第五课 数据查询相关的知识,希望对你有一定的参考价值。

php & mysql】✔️数据库专题✔️ 第五课 数据查询

概述

从今天开始, 小白我将带领大家一起来补充一下 数据库的知识.

条件查询

我们可以使用关键词Where来指定条件, 用于插入, 修改删除或者查询数据.

运算符描述
=等于
<>不等于
>大于
<小于
>=大于等于
<=小于等于
between and小于等于
and与, 表示左右两边的条件同时成立
or或, 表示左右两边只要有一个条件成立

表记录:

例 1

从表中筛选女性用户:

<?php

# 创建连接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否连接成功
if ($conn) 
    echo "服务器连接成功!\\n";
 else 
    echo mysqli_connect_error();


# SQL语句, 条件查询
$SQL = "SELECT * FROM user 
        where sex=2";

# 执行SQL语句
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) 
    echo "SQL语句执行成功!\\n";
 else 
    echo mysqli_error($conn);


# 调试输出
while ($line =  mysqli_fetch_assoc($result)) 
    print_r($line);


# 关闭连接
mysqli_close($conn);

?>

输出结果:

服务器连接成功!
SQL语句执行成功!
Array
(
    [id] => 1
    [username] => 我是小白呀
    [password] => 123456
    [sex] => 2
    [salary] => 30000.00
)
Array
(
    [id] => 2
    [username] => 张美丽
    [password] => 123456
    [sex] => 2
    [salary] => 5000.00
)

例 2

从表中筛选工资 >= 5000 的用户:

<?php

# 创建连接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否连接成功
if ($conn) 
    echo "服务器连接成功!\\n";
 else 
    echo mysqli_connect_error();


# SQL语句, 条件查询
$SQL = "SELECT * FROM user 
        where salary>=5000";

# 执行SQL语句
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) 
    echo "SQL语句执行成功!\\n";
 else 
    echo mysqli_error($conn);


# 调试输出
while ($line =  mysqli_fetch_assoc($result)) 
    print_r($line);


# 关闭连接
mysqli_close($conn);

?>

输出结果:

服务器连接成功!
SQL语句执行成功!
Array
(
    [id] => 1
    [username] => 我是小白呀
    [password] => 123456
    [sex] => 2
    [salary] => 30000.00
)
Array
(
    [id] => 2
    [username] => 张美丽
    [password] => 123456
    [sex] => 2
    [salary] => 5000.00
)
Array
(
    [id] => 5
    [username] => 王二狗
    [password] => 123123
    [sex] => 1
    [salary] => 6000.00
)

运算符 IN

运算符 IN 允许我们在 WHERE 子句中过滤某个字段的多个值.

SQL 语句:

SELECT 列名 FROM 表名 WHERE 列名 IN (值1, 值2, 值3, ...)

例 1

<?php

# 创建连接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否连接成功
if ($conn) 
    echo "服务器连接成功!\\n";
 else 
    echo mysqli_connect_error();


# SQL语句, 条件查询
$SQL = "SELECT * FROM user 
        WHERE username IN
        ('我是小白呀', '王二狗')";

# 执行SQL语句
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) 
    echo "SQL语句执行成功!\\n";
 else 
    echo mysqli_error($conn);


# 调试输出
while ($line =  mysqli_fetch_assoc($result)) 
    print_r($line);


# 关闭连接
mysqli_close($conn);

?>

输出结果:

服务器连接成功!
SQL语句执行成功!
Array
(
    [id] => 1
    [username] => 我是小白呀
    [password] => 123456
    [sex] => 2
    [salary] => 30000.00
)
Array
(
    [id] => 5
    [username] => 王二狗
    [password] => 123123
    [sex] => 1
    [salary] => 6000.00
)

例 2

<?php

# 创建连接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否连接成功
if ($conn) 
    echo "服务器连接成功!\\n";
 else 
    echo mysqli_connect_error();


# SQL语句, 条件查询
$SQL = "SELECT * FROM user 
        WHERE id IN
        (1, 2)";

# 执行SQL语句
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) 
    echo "SQL语句执行成功!\\n";
 else 
    echo mysqli_error($conn);


# 调试输出
while ($line =  mysqli_fetch_assoc($result)) 
    print_r($line);


# 关闭连接
mysqli_close($conn);

?>

运算符 Like

在 WHERE 子句中, 有时候我们需要查询包含某字符串的所有记录, 这时就需要用到运算符 Like.

SQL 语句:

SELECT 列名 FROM 表名 WHERE 列名 LIKE %值%

注意:

  • LIKE 子句中的%类似于正则表达式中的 *, 匹配任意 0 个或多个字符
  • LIKE 子句中的_匹配任意单个字符
  • LIKE 子句中如果没有%_, 就相当于运算符=的效果

例 1

查找姓王的用户:

<?php

# 创建连接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否连接成功
if ($conn) 
    echo "服务器连接成功!\\n";
 else 
    echo mysqli_connect_error();


# SQL语句, 查找王姓
$SQL = "SELECT * FROM user WHERE username LIKE '王%'";

# 执行SQL语句
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) 
    echo "SQL语句执行成功!\\n";
 else 
    echo mysqli_error($conn);


# 调试输出
while ($line =  mysqli_fetch_assoc($result)) 
    print_r($line);


# 关闭连接
mysqli_close($conn);

?>

输出结果:

服务器连接成功!
SQL语句执行成功!
Array
(
    [id] => 3
    [username] => 王富贵
    [password] => 123456
    [sex] => 1
    [salary] => 1000.00
)
Array
(
    [id] => 5
    [username] => 王二狗
    [password] => 123123
    [sex] => 1
    [salary] => 6000.00
)

例 2

名字为三个字:

<?php

# 创建连接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否连接成功
if ($conn) 
    echo "服务器连接成功!\\n";
 else 
    echo mysqli_connect_error();


# SQL语句, 条件查询
$SQL = "SELECT * FROM user WHERE username LIKE '___'";

# 执行SQL语句
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) 
    echo "SQL语句执行成功!\\n";
 else 
    echo mysqli_error($conn);


# 调试输出
while ($line =  mysqli_fetch_assoc($result)) 
    print_r($line);


# 关闭连接
mysqli_close($conn);

?>

以上是关于PHP & MySQL数据库专题 第五课 数据查询的主要内容,如果未能解决你的问题,请参考以下文章

mysql第五课

PHP走进 PHP 第五课 函数

PHP走进 PHP 第五课 函数

PHP走进 PHP 第五课 函数

RabbitMQ第五课 使用技巧

第五课——备份恢复