mysql查詢表中所有列的方法:1、通過“*”查詢表的所有列,語法“select * FROM 表名;”;2、通過列出表的所有字段來查詢表的所有列,語法“SELECT 字段列表 FROM 表名;”。
MySQL?數據表是由行和列構成的,通常把表的“列”稱為字段(Field),把表的“行”稱為記錄(Record)。
查詢表中所有列(字段)
查詢所有字段是指查詢表中所有字段的數據。MySQL 提供了以下 2 種方式查詢表中的所有字段。
使用“*”通配符查詢所有字段
列出表的所有字段
1)使用“*”查詢表的所有字段
SELECT 可以使用“*”查找表中所有字段的數據,語法格式如下:
SELECT?*?FROM?表名;
使用“*”查詢時,只能按照數據表中字段的順序進行排列,不能改變字段的排列順序。
例 1
從 tb_students_info 表中查詢所有字段的數據,SQL 語句和運行結果如下所示。
mysql>?use?test_db; Database?changed mysql>?SELECT?*?FROM?tb_students_info; +----+--------+---------+------+------+--------+------------+ |?id?|?name???|?dept_id?|?age??|?sex??|?height?|?login_date?| +----+--------+---------+------+------+--------+------------+ |??1?|?Dany???|???????1?|???25?|?F????|????160?|?2015-09-10?| |??2?|?Green??|???????3?|???23?|?F????|????158?|?2016-10-22?| |??3?|?Henry??|???????2?|???23?|?M????|????185?|?2015-05-31?| |??4?|?Jane???|???????1?|???22?|?F????|????162?|?2016-12-20?| |??5?|?Jim????|???????1?|???24?|?M????|????175?|?2016-01-15?| |??6?|?John???|???????2?|???21?|?M????|????172?|?2015-11-11?| |??7?|?Lily???|???????6?|???22?|?F????|????165?|?2016-02-26?| |??8?|?Susan??|???????4?|???23?|?F????|????170?|?2015-10-01?| |??9?|?Thomas?|???????3?|???22?|?M????|????178?|?2016-06-07?| |?10?|?Tom????|???????4?|???23?|?M????|????165?|?2016-08-05?| +----+--------+---------+------+------+--------+------------+ 10?rows?in?set?(0.26?sec)
結果顯示,使用“*”通配符時,將返回所有列,數據列按照創建表時的順序顯示。
注意:一般情況下,除非需要使用表中所有的字段數據,否則最好不要使用通配符“*”。雖然使用通配符可以節省輸入查詢語句的時間,但是獲取不需要的列數據通常會降低查詢和所使用的應用程序的效率。使用“*”的優勢是,當不知道所需列的名稱時,可以通過“*”獲取它們。
2)列出表的所有字段
SELECT 關鍵字后面的字段名為需要查找的字段,因此可以將表中所有字段的名稱跟在 SELECT 關鍵字后面。
SELECT?字段列表?FROM?表名;
如果忘記了字段名稱,可以使用 DESC 命令查看表的結構。
有時,由于表的字段比較多,不一定能記得所有字段的名稱,因此該方法很不方便,不建議使用。
例 2
查詢 tb_students_info 表中的所有數據,SQL 語句還可以書寫如下:
SELECT?id,name,dept_id,age,sex,height,login_date?FROM?tb_students_info;
運行結果和例 1 相同。
這種查詢方式比較靈活,如果需要改變字段顯示的順序,只需調整 SELECT 關鍵字后面的字段列表順序即可。
雖然列出表的所有字段的方式比較靈活,但是查詢所有字段時通常使用“*”通配符。使用“*”這種方式比較簡單,尤其是表中的字段很多的時候,這種方式的優勢更加明顯。當然,如果需要改變字段顯示的順序,可以選擇列出表的所有字段。
推薦教程:mysql視頻教程