《零基础》MySQL WHERE 子句(十三)

语法

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

SELECT field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
  • 查询语句中你可以使用一个或者多个表,表之间使用逗号, 分割,并使用WHERE语句来设定查询条件。
  • 你可以在 WHERE 子句中指定任何条件。
  • 你可以使用 AND 或者 OR 指定一个或多个条件。
  • WHERE 子句也可以运用于 SQL 的 DELETE 或者 UPDATE 命令。
  • WHERE 子句类似于程序语言中的 if 条件,根据 MySQL 表中的字段值来读取指定的数据。

以下为操作符列表,可用于 WHERE 子句中。

下表中实例假定 A 为 10, B 为 20

操作符描述实例
=等号,检测两个值是否相等,如果相等返回true(A = B) 返回false。
<>, !=不等于,检测两个值是否相等,如果不相等返回true(A != B) 返回 true。
>大于号,检测左边的值是否大于右边的值, 如果左边的值大于右边的值返回true(A > B) 返回false。
<小于号,检测左边的值是否小于右边的值, 如果左边的值小于右边的值返回true(A < B) 返回 true。
>=大于等于号,检测左边的值是否大于或等于右边的值, 如果左边的值大于或等于右边的值返回true(A >= B) 返回false。
<=小于等于号,检测左边的值是否小于或等于右边的值, 如果左边的值小于或等于右边的值返回true(A <= B) 返回 true。

如果我们想在 MySQL 数据表中读取指定的数据,WHERE 子句是非常有用的。

使用主键来作为 WHERE 子句的条件查询是非常快速的。

如果给定的条件在表中没有任何匹配的记录,那么查询不会返回任何数据。


从命令提示符中读取数据

我们将在SQL SELECT语句使用WHERE子句来读取MySQL数据表 runoob_tbl 中的数据:

实例

以下实例将读取 runoob_tbl 表中 runoob_author 字段值为 Sanjay 的所有记录:

SQL SELECT WHERE 子句

SELECT * from runoob_tbl WHERE runoob_author='菜鸟教程';

输出结果:

 

MySQL 的 WHERE 子句的字符串比较是不区分大小写的。 你可以使用 BINARY 关键字来设定 WHERE 子句的字符串比较是区分大小写的。

如下实例:

BINARY 关键字

mysql> SELECT * from runoob_tbl WHERE BINARY runoob_author='runoob.com'; Empty set (0.01 sec) mysql> SELECT * from runoob_tbl WHERE BINARY runoob_author='RUNOOB.COM'; +-----------+---------------+---------------+-----------------+ | runoob_id | runoob_title | runoob_author | submission_date | +-----------+---------------+---------------+-----------------+ | 3 | JAVA 教程 | RUNOOB.COM | 2016-05-06 | | 4 | 学习 Python | RUNOOB.COM | 2016-03-06 | +-----------+---------------+---------------+-----------------+ 2 rows in set (0.01 sec)

实例中使用了 BINARY 关键字,是区分大小写的,所以 runoob_author='runoob.com' 的查询条件是没有数据的。


使用PHP脚本读取数据

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

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

实例

以下实例将从 runoob_tbl 表中返回使用 runoob_author 字段值为 RUNOOB.COM 的记录:

MySQL WHERE 子句测试:

<?php $dbhost = 'localhost'; // 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"); // 读取 runoob_author 为 RUNOOB.COM 的数据 $sql = 'SELECT runoob_id, runoob_title, runoob_author, submission_date FROM runoob_tbl WHERE runoob_author="RUNOOB.COM"'; mysqli_select_db( $conn, 'RUNOOB' ); $retval = mysqli_query( $conn, $sql ); if(! $retval ) { die('无法读取数据: ' . mysqli_error($conn)); } echo '<h2>菜鸟教程 MySQL WHERE 子句测试<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['runoob_id']}</td> ". "<td>{$row['runoob_title']} </td> ". "<td>{$row['runoob_author']} </td> ". "<td>{$row['submission_date']} </td> ". "</tr>"; } echo '</table>'; // 释放内存 mysqli_free_result($retval); mysqli_close($conn); ?>

输出结果如下所示:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/562316.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《零基础》MySQL UPDATE 更新(十四)

语法 以下是 UPDATE 命令修改 MySQL 数据表数据的通用 SQL 语法&#xff1a; UPDATE table_name SET field1new-value1, field2new-value2 [WHERE Clause] 你可以同时更新一个或多个字段。你可以在 WHERE 子句中指定任何条件。你可以在一个单独表中同时更新数据。 当你需要更…

class h5 点击后样式变化_【php】JQuery怎么实现页面刷新后保留鼠标点击addclass的样式?...

刚开始是这个效果鼠标点击之后变成了这个效果要保证实现 a 标签点击链接一个新的网址同时也要保证效果达到我目前写的网站代码 可以下载http://115.com/file/c2zlhblv看看回答感谢所以回答问题的人。比较好的办法是使用url传参数&#xff0c;然后根据参数判断是否有必要显示cla…

《零基础》MySQL DELETE 语句(十五)

语法 以下是 SQL DELETE 语句从 MySQL 数据表中删除数据的通用语法&#xff1a; DELETE FROM table_name [WHERE Clause] 如果没有指定 WHERE 子句&#xff0c;MySQL 表中的所有记录将被删除。你可以在 WHERE 子句中指定任何条件您可以在单个表中一次性删除记录。 当你想删除…

java 获得站点地址_JavaWeb项目里面的路径获取方法总结

仅为资源搬运&#xff0c;个人还未充分理解...request.getRealPath不推荐使用request.getRealPath("") 这个方法已经不推荐使用了&#xff0c;那代替它的是什么方法 Deprecated. As of Version 2.1 of the Java Servlet API, use ServletContext.getRealPath(java.la…

《零基础》MySQL LIKE 子句(十六)

我们知道在 MySQL 中使用 SQL SELECT 命令来读取数据&#xff0c; 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。 WHERE 子句中可以使用等号 来设定获取数据的条件&#xff0c;如 "runoob_author RUNOOB.COM"。 但是有时候我们需要获取 runoob…

《零基础》MySQL UNION 操作符(十七)

描述 MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。 语法 MySQL UNION 操作符语法格式&#xff1a; SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions] UNION [ALL …

《零基础》MySQL 排序(十八)

我们知道从 MySQL 表中使用 SQL SELECT 语句来读取数据。 如果我们需要对读取的数据进行排序&#xff0c;我们就可以使用 MySQL 的 ORDER BY 子句来设定你想按哪个字段哪种方式来进行排序&#xff0c;再返回搜索结果。 语法 以下是 SQL SELECT 语句使用 ORDER BY 子句将查询…

java序列化错在哪里_Spark序列化错误:java.io.NotSerializableException

由于spark算子用到的class没有实现序列化&#xff0c;报错如下所示15/11/23 14:43:47 ERROR Executor: Exception in task 0.0 in stage 4.0 (TID 4)java.io.NotSerializableException: EntityMentionSerialization stack:- object not serializable (class: EntityMention, va…

《零基础》MySQL GROUP BY 语句(十九)

GROUP BY 语句根据一个或多个列对结果集进行分组。 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数。 GROUP BY 语法 SELECT column_name, function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name; 实例演示 本章节实例使用到了…

字谜 java_java - 2字的字谜 - 堆栈内存溢出

我正在练习java和一些算法&#xff0c;所以我想创建一个程序来查看2个单词是否是彼此的字谜。 我的方法是使用快速排序对单词进行排序&#xff0c;然后查看它们是否匹配。 我测试了我的quicksort功能&#xff0c;它似乎工作。 也许我的字谜功能错了&#xff1f; 我测试了我的代…

基于java jsp+mybatis+Spring+的SSM二手交易网站设计实现

&#x1f345; 作者主页&#xff1a;Java李杨勇 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、Java李杨勇公号作者✌ 简历模板、学习资料、面试题库、技术互助【关注我&#xff0c;都给你】 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f…

《零基础》MySQL 连接的使用(二十)

在前几章节中&#xff0c;我们已经学会了如何在一张表中读取数据&#xff0c;这是相对简单的&#xff0c;但是在真正的应用中经常需要从多个数据表中读取数据。 本章节我们将向大家介绍如何使用 MySQL 的 JOIN 在两个或多个表中查询数据。 你可以在 SELECT, UPDATE 和 DELETE…

怎么设置internet才能下载JAVA_如何使用Java从Internet下载和保存文件?

我需要获取一个在线文件(例如http://www.example.com/information.asp )并将其保存到目录中。 我知道有几种逐行捕获和读取在线文件(URL)的方法&#xff0c;但是有没有一种方法可以使用Java下载和保存文件&#xff1f;#1楼import java.io.*;import java.net.*;public class fil…

热榜!基于jsp+mysql的JSP在线水果销售商城系统设计实现【建议收藏】

&#x1f345; 作者主页&#xff1a;Java李杨勇 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、Java李杨勇公号作者✌ 简历模板、学习资料、面试题库、技术互助【关注我&#xff0c;都给你】 &#x1f345; 文末获取源码联系方式 &#x1f4dd; 研究意…

java log4j权限被否定_SLF4J简介与使用(整合log4j)

一、概念SLF4J的全称是Simple Logging Facade for Java&#xff0c;即简单日志门面。SLF4J并不是具体的日志框架&#xff0c;而是作为一个简单门面服务于各类日志框架&#xff0c;如java.util.logging, logback和log4j。SLF4J提供了统一的记录日志的接口&#xff0c;对不同日志…

《springcloud超级入门》微服务的概念和优缺点《一》

微服务是什么&#xff1f;它的优缺点有哪些&#xff1f; “微服务”一词来源于 Martin Fowler 的《Microservices》一文。微服务是一种架构风格&#xff0c;即将单体应用划分为小型的服务单元&#xff0c;微服务之间使用 HTTP 的 API 进行资源访问与操作。 在笔者看来&#xf…

安卓 php环境 app,安卓系统lighttpd-php-mysql本地环境

这是一个可在安卓手机上布置的服务器环境&#xff0c;功能组件包括&#xff1a;lighttpd、php和mysql&#xff0c;能成功运行DZ等php程序&#xff0c;安装和配置过程十分简单&#xff0c;也许现在该是讨论用什么手机做服务器更合适的时候了。演示图片为一成功运行的服务器环境探…

硬核!从0到1学习Spring Cloud微服务章节《建议收藏》

为什么要使用学习springcloud以及他的优势&#xff1f; Spring Cloud 来源于 Spring&#xff0c;质量、稳定性、持续性都可以得到保证。 spirng Cloud 天然支持 Spring Boot&#xff0c;更加便于业务落地。 Spring Cloud 是 Java 领域最适合做微服务的框架。相比于其它框架&…

《springcloud超级入门》Spring Cloud是什么?Spring Cloud版本介绍《二》

Spring cloud是一系列框架的有序集合。它利用 Spring Boot 的开发便利性&#xff0c;巧妙地简化了分布式系统基础设施的开发&#xff0c;如服务注册、服务发现、配置中心、消息总线、负载均衡、断路器、数据监控等&#xff0c;这些都可以用 Spring Boot 的开发风格做到一键启动…

《springcloud超级入门》Spring Cloud和Dubbo的区别及各自的优缺点《三》

了解为什么需要微服务。最初的服务化解决方案是给相同服务提供一个统一的域名&#xff0c;然后服务调用者向这个域发送 HTTP 请求&#xff0c;由 Nginx 负责请求的分发和跳转。 这种架构存在很多问题&#xff1a;Nginx 作为中间层&#xff0c;在配置文件中耦合了服务调用的逻辑…