Home  >  Article  >  Database  >  从MySQL数据库表中来检索数据并不难

从MySQL数据库表中来检索数据并不难

WBOY
WBOYOriginal
2016-06-07 16:13:471426browse

我们今天主要和大家讲述的是如何正确的从MySQL数据库表中来检索相关数据的实际应用方案,如果你对MySQL数据库表中来检索相关数据的实际操作有兴趣的话,你就可以对以下的文章点击观看了。 1、从MySQL 数据库表中检索信息 实际上,前面我们已经用到了SELECT语

我们今天主要和大家讲述的是如何正确的从MySQL数据库表中来检索相关数据的实际应用方案,如果你对MySQL数据库表中来检索相关数据的实际操作有兴趣的话,你就可以对以下的文章点击观看了。

1、从MySQL 数据库表中检索信息

实际上,前面我们已经用到了SELECT语句,它用来从MySQL 数据库表中检索信息。

select语句格式一般为:

SELECT 检索关键词 FROM 被检索的表 WHERE 检索条件(可选)

以前所使用的“ * ”表示选择所有的列。

下面继续使用我们在上篇文章中创建的表mytable。

2、查询所有数据:

<ol class="dp-xml">
<li class="alt"><span><span>MySQL(和PHP搭配之最佳组合)</span><span class="tag">></span><span> select * from mytable;   </span></span></li>
<li><span>+----------+------+------------+----------+   </span></li>
<li class="alt"><span>| name | sex | birth | birthaddr |   </span></li>
<li><span>+----------+------+------------+--------+   </span></li>
<li class="alt"><span>| abccs |f | 1977-07-07 | china |   </span></li>
<li><span>| mary |f | 1978-12-12 | usa |   </span></li>
<li class="alt"><span>| tom |m | 1970-09-02 | usa |   </span></li>
<li><span>+----------+------+------------+----------+   </span></li>
<li class="alt"><span>3 row in set (0.00 sec)   </span></li>
</ol>

3、修正错误记录:

假如tom的出生日期有错误,应该是1973-09-02,则可以用update语句来修正: MySQL(和PHP搭配之最佳组合)> update mytable set birth = "1973-09-02" where name = "tom";

再用2中的语句看看是否已更正过来。

4、选择特定行

上面修改了tom的出生日期,我们可以选择tom这一行来看看是否已经有了变化:

<ol class="dp-xml">
<li class="alt"><span><span>MySQL(和PHP搭配之最佳组合)</span><span class="tag">></span><span> select * from mytable where </span><span class="attribute">name</span><span> = </span><span class="attribute-value">"tom"</span><span>;   </span></span></li>
<li><span>+--------+------+------------+------------+   </span></li>
<li class="alt"><span>| name |sex | birth | birthaddr |   </span></li>
<li><span>+--------+------+------------+------------+   </span></li>
<li class="alt"><span>| tom |m | 1973-09-02 | usa |   </span></li>
<li><span>+--------+------+------------+------------+   </span></li>
<li class="alt"><span>1 row in set (0.06 sec)   </span></li>
</ol>

上面WHERE的参数指定了检索条件。我们还可以用组合条件来进行查询:

<ol class="dp-xml">
<li class="alt"><span><span>MySQL(和PHP搭配之最佳组合)</span><span class="tag">></span><span> SELECT * FROM mytable WHERE </span><span class="attribute">sex</span><span> = </span><span class="attribute-value">"f"</span><span> AND </span><span class="attribute">birthaddr</span><span> = </span><span class="attribute-value">"china"</span><span>;   </span></span></li>
<li><span>+--------+------+------------+------------+   </span></li>
<li class="alt"><span>| name |sex | birth | birthaddr |   </span></li>
<li><span>+--------+------+------------+------------+   </span></li>
<li class="alt"><span>| abccs |f | 1977-07-07 | china |   </span></li>
<li><span>+--------+------+------------+------------+   </span></li>
<li class="alt"><span>1 row in set (0.06 sec)   </span></li>
</ol>

5、 选择特定列

假如你想查看表中的所有人的姓名,则可以这样操作:

<ol class="dp-xml">
<li class="alt"><span><span>MySQL(和PHP搭配之最佳组合)</span><span class="tag">></span><span> SELECT name FROM mytable;   </span></span></li>
<li><span>+----------+   </span></li>
<li class="alt"><span>| name |   </span></li>
<li><span>+----------+   </span></li>
<li class="alt"><span>| abccs |   </span></li>
<li><span>| mary |   </span></li>
<li class="alt"><span>| tom |   </span></li>
<li><span>+----------+   </span></li>
<li class="alt"><span>3 row in set (0.00 sec)   </span></li>
</ol>

如果想列出姓名和性别两列,则可以用逗号将关键词name和birth分开: myaql> select name,birth from mytable;

6、对行进行排序

我们可以对表中的记录按生日大小进行排序:

<ol class="dp-xml">
<li class="alt"><span><span>MySQL(和PHP搭配之最佳组合)</span><span class="tag">></span><span> SELECT name, birth FROM mytable ORDER BY birth;   </span></span></li>
<li><span>+----------+------------+   </span></li>
<li class="alt"><span>| name | birth |   </span></li>
<li><span>+----------+------------+   </span></li>
<li class="alt"><span>| tom | 1973-09-02 |   </span></li>
<li><span>| abccs | 1977-07-07 |   </span></li>
<li class="alt"><span>| mary | 1978-12-12 |   </span></li>
<li><span>+----------+------------+   </span></li>
<li class="alt"><span>3 row in set (0.00 sec)   </span></li>
</ol>

我们可以用DESC来进行逆序排序:

<ol class="dp-xml">
<li class="alt"><span><span>MySQL(和PHP搭配之最佳组合)</span><span class="tag">></span><span> SELECT name, birth FROM mytable ORDER BY birth DESC;   </span></span></li>
<li><span>+----------+------------+   </span></li>
<li class="alt"><span>| name | birth |   </span></li>
<li><span>+----------+------------+   </span></li>
<li class="alt"><span>| mary | 1978-12-12 |   </span></li>
<li><span>| abccs | 1977-07-07 |   </span></li>
<li class="alt"><span>| tom | 1973-09-02 |   </span></li>
<li><span>+----------+------------+   </span></li>
<li class="alt"><span>3 row in set (0.00 sec)   </span></li>
</ol>

7、 行计数

MySQL 数据库经常要统计一些数据,如表中员工的数目,我们就要用到行计数函数COUNT()。COUNT()函数用于对非NULL结果的记录进行计数:

<ol class="dp-xml">
<li class="alt"><span><span>MySQL(和PHP搭配之最佳组合)</span><span class="tag">></span><span> SELECT COUNT(*) FROM mytable;   </span></span></li>
<li><span>+----------+   </span></li>
<li class="alt"><span>| COUNT(*) |   </span></li>
<li><span>+----------+   </span></li>
<li class="alt"><span>| 3 |   </span></li>
<li><span>+----------+   </span></li>
<li class="alt"><span>1 row in set (0.06 sec)   </span></li>
</ol>

员工中男女数量:

<ol class="dp-xml">
<li class="alt"><span><span>MySQL(和PHP搭配之最佳组合)</span><span class="tag">></span><span> SELECT sex, COUNT(*) FROM mytable GROUP BY sex;   </span></span></li>
<li><span>+------+----------+   </span></li>
<li class="alt"><span>| sex | COUNT(*) |   </span></li>
<li><span>+------+----------+   </span></li>
<li class="alt"><span>| f | 2 |   </span></li>
<li><span>| m | 1 |   </span></li>
<li class="alt"><span>+------+----------+   </span></li>
<li><span>2 row in set (0.00 sec)   </span></li>
</ol>

注意我们使用了GROUP BY对SEX进行了分组。以上的相关内容就是对如何从 MySQL 数据库表中检索数据的介绍,望你能有所收获。


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn