教你在MySQL数据库中操作数据
创始人
2024-08-02 14:21:21
0

MySQL数据库中对表的操作是初学者学习时的难点,下面我们就来对MySQL数据库进行一系列的表操作来帮助初学者迅速的掌握对MySQL数据表的操作。

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

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

select语句格式一般为:

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

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

假设我们已经创建了表mytable,下面的所有操作都是对mytable表的操作。

2、查询所有数据

  1. mysql> select * from mytable;  
  2.  
  3. +----------+------+------------+----------+  
  4.  
  5. | name | sex | birth | birthaddr |  
  6.  
  7. +----------+------+------------+--------+  
  8.  
  9. | abccs |f | 1977-07-07 | china |  
  10.  
  11. | mary |f | 1978-12-12 | usa  
  12.  
  13. |  
  14.  
  15. | tom |m | 1970-09-02 | usa  
  16.  
  17. |  
  18.  
  19. +----------+------+------------+----------+  
  20.  
  21. 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这一行来看看是否已经有了变化:

  1. mysql> select * from mytable where name = "tom";  
  2.  
  3. +--------+------+------------+------------+  
  4.  
  5. | name |sex | birth | birthaddr  
  6.  
  7. |  
  8.  
  9. +--------+------+------------+------------+  
  10.  
  11. | tom |m | 1973-09-02 | usa  
  12.  
  13. |  
  14.  
  15. +--------+------+------------+------------+  
  16.  
  17. 1 row in set (0.06 sec) 

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

  1. mysql> SELECT * FROM mytable WHERE sex = "f" AND birthaddr = "china";  
  2.  
  3. +--------+------+------------+------------+  
  4.  
  5. | name |sex | birth | birthaddr  
  6.  
  7. |  
  8.  
  9. +--------+------+------------+------------+  
  10.  
  11. | abccs |f | 1977-07-07 | china |  
  12.  
  13. 1 row in set (0.06 sec) 

#p#

5、 选择特定列

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

  1. mysql> SELECT name FROM mytable;  
  2.  
  3. +----------+  
  4.  
  5. | name |  
  6.  
  7. +----------+  
  8.  
  9. | abccs |  
  10.  
  11. | mary |  
  12.  
  13. | tom  
  14.  
  15. |  
  16.  
  17. +----------+  
  18.  
  19. 3 row in set (0.00 sec) 

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

  1. myaql> select name,birth from mytable; 

6、对行进行排序

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

  1. mysql> SELECT name, birth FROM mytable ORDER BY birth;  
  2.  
  3. +----------+------------+  
  4.  
  5. | name | birth |  
  6.  
  7. +----------+------------+  
  8.  
  9. | tom | 1973-09-02 |  
  10.  
  11. | abccs | 1977-07-07 |  
  12.  
  13. | mary | 1978-12-12 |  
  14.  
  15. +----------+------------+  
  16.  
  17. 3 row in set (0.00 sec) 

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

  1. mysql> SELECT name, birth FROM mytable ORDER BY birth DESC;  
  2.  
  3. +----------+------------+  
  4.  
  5. | name | birth |  
  6.  
  7. +----------+------------+  
  8.  
  9. | mary | 1978-12-12 |  
  10.  
  11. | abccs | 1977-07-07 |  
  12.  
  13. | tom | 1973-09-02 |  
  14.  
  15. +----------+------------+  
  16.  
  17. 3 row in set (0.00 sec) 

7、 行计数

数据库经常要统计一些数据,如表中员工的数目,我们就要用到行计数函数COUNT()。

COUNT()函数用于对非NULL结果的记录进行计数:

  1. mysql> SELECT COUNT(*) FROM mytable;  
  2.  
  3. | COUNT(*) |  
  4.  
  5. +----------+  
  6.  
  7. |  
  8.  
  9. 3 |  
  10.  
  11. +----------+  
  12.  
  13. 1 row in set (0.06 sec) 

员工中男女数量:

  1. mysql> SELECT sex, COUNT(*) FROM mytable GROUP BY sex;  
  2.  
  3. +------+----------+  
  4.  
  5. | sex | COUNT(*) |  
  6.  
  7. +------+----------+  
  8.  
  9. | f |  
  10.  
  11. 2 |  
  12.  
  13. | m |  
  14.  
  15. 1 |  
  16.  
  17. +------+----------+ 

以上就是MySQL数据库表的一些常用的操作,希望会对读者有所帮助。如果想更多地了解MySQL数据库,请参考我们网站的MySQL专栏:http://database.51cto.com/col/484/。

【编辑推荐】

  1. MFC连接MySql数据库
  2. 如何安全的远程使用MySQL GUI工具
  3. 浅谈mysql在主从服务器中同步的实现
  4. 小记MySQL的mysql-udf-http效率测试
  5. MySQL数据库新特性之存储过程入门教程

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
P2P的自白|我不生产内容,我... 现在一提起P2P,人们就会联想到正在被有关部门“围剿”的互联网理财服务。×租宝事件使得劳...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...