程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於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)


如果想列出姓名和性別兩列,

歡迎光臨學網,收藏本篇文章 [1] [2]

$False$

則可以用逗號將關鍵詞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