第17章 MySQL LIKE 子句教程

咱们知道在 MySQL 中使用 SQL SELECT 命令来读取数据, 同时咱们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。

WHERE 子句中可以使用等号 = 来设定获取数据的条件,如 “liulianjiangcsdn_author = ‘liulianjiangcsdn.COM’”。

但是有时候咱们需要获取 liulianjiangcsdn_author 字段含有 “COM” 字符的所有记录,这时咱们就需要在 WHERE 子句中使用 SQL LIKE 子句。

SQL LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号 *。

如果没有使用百分号 %, LIKE 子句与等号 = 的效果是一样的。

语法

以下是 SQL SELECT 语句使用 LIKE 子句从数据表中读取数据的通用语法:


    SELECT field1, field2,...fieldN 
    FROM table_name
    WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'

  • 陛下可以在 WHERE 子句中指定任何条件。
  • 陛下可以在 WHERE 子句中使用LIKE子句。
  • 陛下可以使用LIKE子句代替等号 =。
  • LIKE 通常与 % 一同使用,类似于一个元字符的搜索。
  • 陛下可以使用 AND 或者 OR 指定一个或多个条件。
  • 陛下可以在 DELETE 或 UPDATE 命令中使用 WHERE…LIKE 子句来指定条件。

在命令提示符中使用 LIKE 子句

以下咱们将在 SQL SELECT 命令中使用 WHERE…LIKE 子句来从MySQL数据表 liulianjiangcsdn_tbl 中读取数据。

实例

以下是咱们将 liulianjiangcsdn_tbl 表中获取 liulianjiangcsdn_author 字段中以 COM 为结尾的的所有记录:


    SQL LIKE 语句:
     
    
    
    
    mysql> use liulianjiangcsdn;
    Database changed
    mysql> SELECT * from liulianjiangcsdn_tbl  WHERE liulianjiangcsdn_author LIKE '%COM';
    +-----------+---------------+---------------+-----------------+
    | liulianjiangcsdn_id | liulianjiangcsdn_title  | liulianjiangcsdn_author | submission_date |
    +-----------+---------------+---------------+-----------------+
    | 3         | 学习 Java   | liulianjiangcsdn.COM    | 2015-05-01      |
    | 4         | 学习 Python | liulianjiangcsdn.COM    | 2016-03-06      |
    +-----------+---------------+---------------+-----------------+
    2 rows in set (0.01 sec)


在PHP脚本中使用 LIKE 子句

陛下可以使用PHP函数的 mysqli_query() 及相同的 SQL SELECT 带上 WHERE…LIKE 子句的命令来获取数据。

该函数用于执行 SQL 命令,然后通过 PHP 函数 mysqli_fetch_array() 来输出所有查询的数据。

但是如果是 DELETE 或者 UPDATE 中使用 WHERE…LIKE 子句的S QL 语句,则无需使用 mysqli_fetch_array() 函数。

实例

以下是咱们使用PHP脚本在 liulianjiangcsdn_tbl 表中读取 liulianjiangcsdn_author 字段中以 COM 为结尾的的所有记录:

17章 MySQL LIKE 子句教程测试: 
      
    
    <?php
    $dbhost = 'localhost';  // mysqlserver 主机地址
    $dbuser = 'root';            // mysql用户名
    $dbpass = '123456';          // mysql用户名password 
    $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
    if(! $conn )
    {
        die('连接失败: ' . mysqli_error($conn));
    }
    // 设置编码,防止中文乱码
    mysqli_query($conn , "set names utf8");
     
    $sql = 'SELECT liulianjiangcsdn_id, liulianjiangcsdn_title, 
            liulianjiangcsdn_author, submission_date
            FROM liulianjiangcsdn_tbl
            WHERE liulianjiangcsdn_author LIKE "%COM"';
     
    mysqli_select_db( $conn, 'liulianjiangcsdn' );
    $retval = mysqli_query( $conn, $sql );
    if(! $retval )
    {
        die('无法读取数据: ' . mysqli_error($conn));
    }
    echo '<h2>liulianjiangcsdn教程 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, MYSQLI_ASSOC))
    {
        echo "<tr><td> {$row['liulianjiangcsdn_id']}</td> ".
             "<td>{$row['liulianjiangcsdn_title']} </td> ".
             "<td>{$row['liulianjiangcsdn_author']} </td> ".
             "<td>{$row['submission_date']} </td> ".
             "</tr>";
    }
    echo '</table>';
    mysqli_close($conn);
    ?>

本专栏所有文章

第1章 MySQL 教程第2章 MySQL 安装教程
第3章 MySQL 管理教程第4章 MySQL PHP 语法教程
第5章 MySQL 连接教程第6章 MySQL 创建数据库教程
第7章 MySQL 删除数据库教程第8章 MySQL 选择数据库教程
第9章 MySQL 数据类型教程第10章 MySQL 创建数据表教程
第11章 MySQL 删除数据表教程第12章 MySQL 插入数据教程
第13章 MySQL 查询数据教程第14章 MySQL WHERE 子句教程
第15章 MySQL UPDATE 更新教程第16章 MySQL DELETE 语句教程
第17章 MySQL LIKE 子句教程第18章 MySQL UNION教程
第19章 MySQL 排序教程第20章 MySQL 分组教程
第21章 MySQL 连接的使用教程第22章 MySQL NULL 值处理教程
第23章 MySQL 正则表达式教程第24章 MySQL 事务教程
第25章 MySQL ALTER命令教程第26章 MySQL 索引教程
第27章 MySQL 临时表教程第28章 MySQL 复制表教程
第29章 MySQL 元数据教程第30章 MySQL 序列使用教程
第31章 MySQL 处理重复数据教程第32章 MySQL 及 SQL 注入教程
第33章 MySQL 导出数据教程第34章 MySQL 导入数据教程
第35章 MySQL 函数教程第36章 MySQL 运算符教程

寄语

本文有榴莲酱CSDN原创,欢迎点赞、转载,博客地址:https://blog.csdn.net/qq441540598

  • 我对他说:我很爱他;他坚定地但却令人难忘地答道:“要知道,我也很爱你啊。正因为这样。我才为了你忍受痛苦-这也是为了爱啊。难道我为别人也忍受过吗?我才不会呢。”
  • 梦想绝不是梦,两者之间的差别通常都有一段非常值得人们深思的距离。(古龙)
  • 遇到别无选择的困境,我们一定要勇于毅然杀出一条血路来以求绝处逢生。
  • 嘴在逞强,心在投降。明明很在乎,却装作无所谓。
  • 当你最困难的时候就是离不远的时候,如果你遇到困难就后退,那就算已到彼岸,它也会与你无缘。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

榴莲酱csdn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值