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

如何從MySQL數據庫表中檢索數據

編輯:Delphi
那麼我們如何從數據庫表中檢索數據呢?
  
      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