当前页面位置: » 丰搜网 » 文档中心 » 详细内容
如何从mysql数据库表中检索数据
在《用mysql创建数据库和数据库表》文章中,我们如何创建一个数据库和数据库表,并知道如何向数据库表中添加记录。 那么我们如何从数据库表中检索数据呢?
1、从数据库表中检索信息
实际上,前面我们已经用到了select语句,它用来从数据库表中检索信息。
select语句格式一般为:
select 检索关键词 from 被检索的表 where 检索条件(可选)
以前所使用的“ * ”表示选择所有的列。下面继续使用我们在上篇文章中创建的表mytable。
2、查询所有数据:
mysql> select * from mytable; +----------+------+------------+----------+ name sex birth birthaddr +----------+------+------------+--------+ abccs f 1977-07-07 china mary f 1978-12-12 usa tom m 1970-09-02 usa +----------+------+------------+----------+ 3 row in set (0.00 sec) |
3、修正错误记录:
假如tom的出生日期有错误,应该是1973-09-02,则可以用update语句来修正: mysql> update mytable set birth = "1973-09-02" where name = "tom"; 再用2中的语句看看是否已更正过来。
4、选择特定行
上面修改了tom的出生日期,我们可以选择tom这一行来看看是否已经有了变化:
mysql> select * from mytable where name = "tom"; +--------+------+------------+------------+ name sex birth birthaddr +--------+------+------------+------------+ tom m 1973-09-02 usa +--------+------+------------+------------+ 1 row in set (0.06 sec) |
上面where的参数指定了检索条件。我们还可以用组合条件来进行查询:
mysql> select * from mytable where sex = "f" and birthaddr = "china"; +--------+------+------------+------------+ name sex birth birthaddr +--------+------+------------+------------+ abccs f 1977-07-07 china +--------+------+------------+------------+ 1 row in set (0.06 sec) |
5、 选择特定列
假如你想查看表中的所有人的姓名,则可以这样操作:
mysql> select name from mytable; +----------+ name +----------+ abccs mary tom +----------+ 3 row in set (0.00 sec) |
如果想列出姓名和性别两列,则可以用逗号将关键词name和birth分开: myaql> select name,birth from mytable;
6、对行进行排序
我们可以对表中的记录按生日大小进行排序:
mysql> select name, birth from mytable order by birth; +----------+------------+ name birth +----------+------------+ tom 1973-09-02 abccs 1977-07-07 mary 1978-12-12 +----------+------------+ 3 row in set (0.00 sec) |
我们可以用desc来进行逆序排序:
mysql> select name, birth from mytable order by birth desc; +----------+------------+ name birth +----------+------------+ mary 1978-12-12 abccs 1977-07-07 tom 1973-09-02 +----------+------------+ 3 row in set (0.00 sec) |
7、 行计数
数据库经常要统计一些数据,如表中员工的数目,我们就要用到行计数函数count()。count()函数用于对非null结果的记录进行计数:
mysql> select count(*) from mytable; +----------+ count(*) +----------+ 3 +----------+ 1 row in set (0.06 sec) 员工中男女数量: mysql> select sex, count(*) from mytable group by sex; +------+----------+ sex count(*) +------+----------+ f 2 m 1 +------+----------+ 2 row in set (0.00 sec) |
注意我们使用了group by对sex进行了分组。
关键字 本文所属关键字
相关 与本文相关文章
分类 所有文章关键字导航
标准 网站致力的规范