• 品书香 看电影 十堰市民过了个名副其实的“文化年” 2018-02-24
  • 人民网驻阿尔及利亚记者报道集 2018-02-24
  • 党务问答:党组与党委有何区别? 2018-02-24
  • 泽贡高等级公路2日起临时封闭 2018-02-23
  • 外媒称中国元素成为国际时尚:旗袍成经典服装 2018-02-23
  • 广东清远垃圾收集点火灾致9人死亡 系烟花爆竹引起 2018-02-22
  • 党务问答:党组与党委有何区别? 2018-02-21
  • 杨浦区贯彻实施长护险 春节加班满足老人护理需求 2018-02-21
  •  “不打烊”不等于“全配送” 快递如何保障春节网购 2018-02-21
  • 冬奥观察:奥林匹克在“云”间 2018-02-20
  •  “不打烊”不等于“全配送” 快递如何保障春节网购 2018-02-20
  • 开创生态文明新时代 绘出美丽中国新图景 2018-02-20
  • 人民网驻阿尔及利亚记者报道集 2018-02-19
  • 党务问答:党组与党委有何区别? 2018-02-19
  • MINI车联网服务3月起升级至4G网络 增加新功能 2018-02-18
  • 【mysql教程】MySQL LIKE 子句

    栏目: mysql 发布于: 2014-11-26 19:45:04

    MySQL LIKE 子句

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

    WHERE 子句中可以使用等号 (=) 来设定获取数据的条件,如 "tutorial_author = 'Sanjay'"。

    但是有时候我们需要获取 tutorial_author 字段含有 "jay" 字符的所有记录,这时我们就需要在 WHERE 子句中使用 SQL LIKE 子句。

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

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

    语法

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

    SELECT field1, field2,...fieldN table_name1, table_name2...
    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数据表 tutorials_tbl 中读取数据。

    实例

    以下是我们将tutorials_tbl表中获取tutorial_author字段中以"jay"为结尾的的所有记录:

    root@host# mysql -u root -p password;
    Enter password:*******
    mysql> use TUTORIALS;
    Database changed
    mysql> SELECT * from tutorials_tbl 
        -> WHERE tutorial_author LIKE '%jay';
    +-------------+----------------+-----------------+-----------------+
    | tutorial_id | tutorial_title | tutorial_author | submission_date |
    +-------------+----------------+-----------------+-----------------+
    |           3 | JAVA Tutorial  | Sanjay          | 2007-05-21      |
    +-------------+----------------+-----------------+-----------------+
    1 rows in set (0.01 sec)
    
    mysql>
    

    在PHP脚本中使用 LIKE 子句

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

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

    但是如果是DELETE或者UPDATE中使用 WHERE...LIKE 子句的SQL语句,则无需使用mysql_fetch_array() 函数。

    实例

    以下是我们使用PHP脚本在tutorials_tbl表中读取tutorial_author字段中以"jay"为结尾的的所有记录:

    <?php
    $dbhost = 'localhost:3036';
    $dbuser = 'root';
    $dbpass = 'rootpassword';
    $conn = mysql_connect($dbhost, $dbuser, $dbpass);
    if(! $conn )
    {
      die('Could not connect: ' . mysql_error());
    }
    $sql = 'SELECT tutorial_id, tutorial_title, 
                   tutorial_author, submission_date
            FROM tutorials_tbl
            WHERE tutorial_author LIKE "%jay%"';
    
    mysql_select_db('TUTORIALS');
    $retval = mysql_query( $sql, $conn );
    if(! $retval )
    {
      die('Could not get data: ' . mysql_error());
    }
    while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
    {
        echo "Tutorial ID :{$row['tutorial_id']}  <br> ".
             "Title: {$row['tutorial_title']} <br> ".
             "Author: {$row['tutorial_author']} <br> ".
             "Submission Date : {$row['submission_date']} <br> ".
             "--------------------------------<br>";
    } 
    echo "Fetched data successfully\n";
    mysql_close($conn);
    ?>
    

    本文转载自:w3cschool
    本站文章除注明转载外,均为本站原创或编译?;队魏涡问降淖?,但请务必注明出处。
    转载请注明:文章转载自 七星彩票平台
    本文标题:【mysql教程】MySQL LIKE 子句
    IT技术书籍推荐:
    数据库技术丛书·MySQL技术内幕:InnoDB存储引擎(第2版)
    数据库技术丛书·MySQL技术内幕:InnoDB存储引擎(第2版)
    姜承尧 (David Jiang) (作者)
    《MySQL技术内幕:InnoDB存储引擎(第2版)》由国内资深MySQL专家亲自执笔,国内外多位数据库专家联袂推荐。作为国内唯一一本关于InnoDB的专著,《MySQL技术内幕:InnoDB存储引擎(第2版)》的第1版广受好评,第2版不仅针对最新的MySQL 5.6对相关内容进行了全面的补充,还根据广大读者的反馈意见对第1版中存在的不足进行了完善,《MySQL技术内幕:InnoDB存储引擎(第2版)》大约重写了50%的内容?!禡ySQL技术内幕:InnoDB存储引擎(第2版)》从源代码的角度深度解析了InnoDB的体系结构、实现原理、工作机制,并给出了大量最佳实践,能帮助你系统而深入地掌握InnoDB,更重要的是,它能为你设计管理高性能、高可用的数据库系统提供绝佳的指导。 《MySQL技术内幕:InnoDB存储引擎(第2版)》一共10章,首先宏观地介绍了MySQL的体系结构和各种常见的存储引擎以及它们之间的比较;接着以InnoDB的内部实现为切入点,逐一详细讲解了InnoDB存储引擎内部的各个功能??榈氖迪衷?,包括InnoDB存储引擎的体系结构、内存中的数据结构、基于InnoDB存储引擎的表和页的物理存储、索引与算法、文件、锁、事务、备份与恢复,以及InnoDB的性能调优等重要的知识;最后对InnoDB存储引擎源代码的编译和调试做了介绍,对大家阅读和理解InnoDB的源代码有重要的指导意义。 《MySQL技术内幕:InnoDB存储引擎(第2版)》适合所有希望构建和管理高性能、高可用性的MySQL数据库系统的开发者和DBA阅读。