上篇我們學會了如何建立乙個資料庫和資料庫表,並知道如何向資料庫表中新增記錄。
那麼我們如何從資料庫表中檢索資料呢?
1、從資料庫表中檢索資訊
mysql> select * from mytable;+----------+------+------------+----------+
| name | *** | 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 |*** | birth | birthaddr |
+--------+------+------------+------------+
| tom |m | 1973-09-02 | usa |
+--------+------+------------+------------+
1 row in set (0.06 sec)
上面where的引數指定了檢索條件。我們還可以用組合條件來進行查詢:
mysql> select * from mytable where *** = "f" and birthaddr = "china";+--------+------+------------+------------+
| name |*** | 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)
我們可以對錶中的記錄按生日大小進行排序:
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 ***, count(*) from mytable group by ***;
+------+----------+
| *** | count(*) |
+------+----------+
| f | 2 |
| m | 1 |
+------+----------+
2 row in set (0.00 sec)
注意我們使用了group by對***進行了分組。
如何從資料庫中讀取資料
今天要用資料庫的時候,我發現我竟然忘記了怎麼從資料庫中讀取資料,而查了一圈谷歌,又是非常失望 內容基本就是摘抄了mysqldb和web.py的官方文件,實在是失望。這篇文章先介紹mysqldb和web.py,django以後補上。db mysqldb.connect cursor db.cursor...
如何修復MySQL資料庫表
你可能在使用mysql過程中,各種意外導致資料庫表的損壞,而且這些資料往往是最新的資料,通常不可能在備份資料中找到。本章將繼上篇文章中檢查出表的問題後,告訴你如何修復表。一張損壞的表的症狀通常是查詢意外中斷並且你能看到例如這些錯誤 tbl name.frm 被鎖定不能改變。不能找到檔案 tbl na...
Mysql資料庫學習(3) 檢索資料
從資料庫中檢索資料,是大家最常用到的資料庫功能之一。在mysql中檢索資料的方法多種多樣,下面分別介紹mysql中幾種不同的資料檢索方法 1.select方法 該方法可以從資料庫的表中挑選出所需的列,不過缺點是資料量較大。假如我們想要從customers的表中選出cust id,cust name ...