程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 如何從 MySQL 數據庫表中檢索數據

如何從 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進行了分組。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved