《PHP和MySQL Web开发从新手到高手(第5版)》一一2.7 查看存储的数据

2.7 查看存储的数据

PHP和MySQL Web开发从新手到高手(第5版)
2.7 查看存储的数据
SELECT命令用来查看数据库表中存储的数据,这是SQL语言中最复杂的一条命令。这条语句之所以复杂,原因在于数据库的主要强大之处就是数据访问的灵活性。现在,我们对数据库的体验还处在一个早期阶段。这时候,只需要关注相对简单的结果列表。因此,让我们考虑SELECT命令较为简单的形式。

以下这条命令,将会列出joke表中存储的所有内容:

SELECT * FROM joke

如果读出来,这条命令应该读作“select everything from joke”。如果你尝试运行这条命令,将会看到如图2.13所示的结果。

假设要对这样一个数据库做一些较为正式的操作。此时,你可能要尝试避免从数据库读取所有可笑的笑话。为了不让自己分心,你可能想要告诉MySQL忽略joketext列。实现这一点的命令如下所示:

SELECT id, jokedate FROM joke

此时,我们确切地告知数据库想要看到哪些列,而不是告诉它“选择所有的内容”。结果如图2.14所示。

如果想要看到一些笑话文本怎么办呢?除了能够通过SELECT命令指定想要显示的列,我们还可以使用函数来修改每一列的显示。有一个名为LEFT的函数,可以用来通知MySQL显示一列的内容,直到达到一定数目的字符为止。例如,假设只想看到joketext列的前20个字符。应该使用如下的命令:

SELECT id, LEFT(joketext, 20), jokedate FROM joke

结果如图2.15所示。

来看看这是如何工作的?另一个有用的函数是COUNT,它允许我们计算返回的结果的数目。例如,如果想要弄清楚表中存储了多少个笑话,我们可以使用以下的命令:

SELECT COUNT(*) FROM joke

如图2.16所示,表中只有一个笑话。

目前为止,我们已经见到了如何获取表中所有的条目的示例。不过,还可以将结果限制为:只拥有我们想要的特定属性的那些数据库条目。通过给SELECT命令添加一条所谓的WHERE子句(WHERE clause),我们可以设置这些限制。考虑以下的例子:

SELECT COUNT(*)FROM joke WHERE jokedate="2012-01-01"

这条查询将会统计日期大于或等于2012年1月1日的笑话。就日期而言,“大于或等于”意味着“刚好在那天或在那天之后”。关于这一主题的另一种形式是,让你搜索包含了一段特定文本的条目。留意以下这条查询:

SELECT joketext FROM joke WHERE joketext LIKE "%chicken%"

这条查询显示了joketext列中包含了文本“chicken”的所有笑话的完整文本。LIKE关键字告诉MySQL,指定的列必须匹配给定的模式。1在这个例子中,我们使用的模式是"%chicken%"。%符号表示文本“chicken”可能位于任何文本之前或之后,又或者前后都有。

也可以在WHERE子句中组合条件,以进一步限制结果。例如,要显示仅仅在2012年4月添加的knock-knock笑话,可以使用如下的查询:

SELECT joketext FROM joke WHERE
joketext LIKE "%knock%" AND
jokedate >= "2012-04-01" AND
jokedate < "2012-05-01"

在表中再多输入几条笑话(例如,前面提到的“Knock-Knock”笑话),并且试验一下SELECT查询(要了解更多思路,请查阅第4章内容)。

你可以使用SELECT命令做很多事情,因此,我鼓励你去熟悉它。在随后需要用到一些SELECT的更高级的功能的时候,我们将会介绍。

1你可能会感到好奇。注意,LIKE是区分大小写的。因此,这个模式也会匹配包含“Chicken”的一个笑话,甚至会匹配包含“FuNkYcHiCkEn”的一个笑话

时间: 2024-11-01 06:09:30

《PHP和MySQL Web开发从新手到高手(第5版)》一一2.7 查看存储的数据的相关文章

《PHP和MySQL Web开发从新手到高手(第5版)》一一1.3 在Mac OS X下安装

1.3 在Mac OS X下安装 PHP和MySQL Web开发从新手到高手(第5版) 在本节中,我们将介绍如何在一台运行Mac OS X version 10.5(Leopard)的Mac计算机上开始运行一个安装了PHP和MySQL的Web服务器.如果你使用的并不是Mac计算机,可以跳过本节. Mac OS X将Apache和PHP都作为标准安装组件来安装,它是唯一这么做的面向消费者的OS(实际上,它还附带了Ruby.Python和Perl,所有这些都是流行的Web编程语言).也就是说,只需要

《PHP和MySQL Web开发从新手到高手(第5版)》一一2.2 使用phpMyAdmin运行SQL查询

2.2 使用phpMyAdmin运行SQL查询 PHP和MySQL Web开发从新手到高手(第5版) 如同Web服务器设计响应来自客户端(一个Web浏览器)的请求一样,MySQL数据库服务器会响应来自客户端程序(client programs)的请求.在本书稍后的内容中,我们将以PHP脚本的形式编写自己的MySQL客户端程序.但是现在,我们可以使用XAMPP和MAMP二者都有的一个客户端程序,这就是phpMyAdmin. phpMyAdmin本身是用PHP编写的.一个高级的Web应用程序.除了包

《PHP和MySQL Web开发从新手到高手(第5版)》一2.2 使用phpMyAdmin运行SQL查询

2.2 使用phpMyAdmin运行SQL查询 PHP和MySQL Web开发从新手到高手(第5版) 如同Web服务器设计响应来自客户端(一个Web浏览器)的请求一样,MySQL数据库服务器会响应来自客户端程序(client programs)的请求.在本书稍后的内容中,我们将以PHP脚本的形式编写自己的MySQL客户端程序.但是现在,我们可以使用XAMPP和MAMP二者都有的一个客户端程序,这就是phpMyAdmin. phpMyAdmin本身是用PHP编写的.一个高级的Web应用程序.除了包

《PHP和MySQL Web开发从新手到高手(第5版)》一导读

前 言 PHP和MySQL Web开发从新手到高手(第5版) PHP和MySQL已经发生变化了. 回顾2001年,当我编写本书第一版的时候(书名叫作Build Your Own Database Driven Web- site with PHP & MySQL),读者吃惊地发现,竟然可以创建一个站点的所有Web页面而不需要为每个页面编写一个单独的HTML文件.PHP从众多的编程语言中脱颖而出,主要是因为它很容易,以至于几乎任何人都可以学习,并且它可以免费下载和安装.同样,MySQL为我们提供了

《PHP和MySQL Web开发从新手到高手(第5版)》一2.7 查看存储的数据

2.7 查看存储的数据 PHP和MySQL Web开发从新手到高手(第5版) SELECT命令用来查看数据库表中存储的数据,这是SQL语言中最复杂的一条命令.这条语句之所以复杂,原因在于数据库的主要强大之处就是数据访问的灵活性.现在,我们对数据库的体验还处在一个早期阶段.这时候,只需要关注相对简单的结果列表.因此,让我们考虑SELECT命令较为简单的形式. 以下这条命令,将会列出joke表中存储的所有内容: SELECT * FROM joke 如果读出来,这条命令应该读作"select eve

《PHP和MySQL Web开发从新手到高手(第5版)》一一1.6 第一个PHP脚本

1.6 第一个PHP脚本 PHP和MySQL Web开发从新手到高手(第5版) 如果我们在帮助你安装好了所有的软件之后就暂停下来,直到第3章才让你看到PHP脚本是什么样子的话,似乎很不公平.所以,这里先来满足下你的胃口吧. 打开你喜欢的文本或HTML编辑器,并且创建一个名为today.php的文件.在文件中输入如下内容: chapter1/today.php <!DOCTYPE html> <html lang="en"> <head> <me

《PHP和MySQL Web开发从新手到高手(第5版)》一1.6 第一个PHP脚本

1.6 第一个PHP脚本 PHP和MySQL Web开发从新手到高手(第5版) 如果我们在帮助你安装好了所有的软件之后就暂停下来,直到第3章才让你看到PHP脚本是什么样子的话,似乎很不公平.所以,这里先来满足下你的胃口吧. 打开你喜欢的文本或HTML编辑器,并且创建一个名为today.php的文件.在文件中输入如下内容: chapter1/today.php <!DOCTYPE html> <html lang="en"> <head> <me

《PHP和MySQL Web开发从新手到高手(第5版)》一一2.6 将数据插入到表中

2.6 将数据插入到表中 PHP和MySQL Web开发从新手到高手(第5版) 数据库创建好了,表也创建好了,剩下的工作就是将笑话放入到数据库中.将数据插入到数据库中的命令叫作INSERT,名字相当贴切.这条命令有两种基本形式: INSERT INTO tableName SET column1Name = column1Value, column2Name = column2Value, ⋮ INSERT INTO tableName (column1Name, column2Name, -)

《PHP和MySQL Web开发从新手到高手(第5版)》一2.5 创建表

2.5 创建表 PHP和MySQL Web开发从新手到高手(第5版)目前为止,我们所遇到的SQL命令都相当简单.但是,表是如此具有灵活性.因此,需要一条较为复杂的命令才能创建它.这条命令的基本形式如下: CREATE TABLE table_name ( column1Name column1Type column1Details, column2Name column2Type column2Details, ⋮ ) DEFAULT CHARACTER SET charset ENGINE=I