如果沒有明確排序查詢結果,則返回的數據的順序沒有特殊意義。返回數據的順序可能是數據被添加到表中的順序,也可能不是。
表test
Field | Type | Null | Key | Default | Extra |
id | int(11) | NO | PRI | NULL | auto_increment |
name | char(50) | NO | NULL | ||
city | char(50) | YES | NULL | ||
school | char(50) | YES | NULL |
1.檢索單個列
SELECT name FROM test;
2.檢索多個列
SELECT name, city FROM test;
3.檢索所有列
SELECT語句還可以檢索所有的列而不必逐個列出它們。可以通過在實際列名的位置使用星號(*)通配符來達到:
SELECT * FROM test;
一般,除非確實需要表中的所有列,否則最好別使用*通配符。檢索不需要的通常會降低檢索和應用程序的性能。
4.檢索不同的行
使用DISTINCT關鍵字可以指示MySQL只返回不同的值。
例子:SELECT DISTINCT name FROM test;
此例返回test表中不同的name字段。
****DISTINCT 關鍵字應用於所有列而不是前置它的列。例如SELECT DISTINCT name, city FROM test;返回name和city字段不同的組合。
5.限制返回結果數量-----LIMIT關鍵字
例子1:SELECT name FROM test LIMIT 5;
LIMIT 5指示MySQL返回不多於5行。
例子2:SELECT name FROM test LIMIT 5,5;
LIMIT 5,5指示MySQL返回從行5開始的5行。第一個數位開始位置,第二個數位要檢索的行數。
所以,帶一個值的LIMIT總是從第一行開始,給出的數位返回的行數。帶兩個值的LIMIT可以指定從行號爲第一個值的位置開始
注:行0爲檢索出來的第一行
注:MySQL支持LIMIT的另一種替代語法。LIMIT 4 OFFSET 3 和 LIMIT 3,4的意義是一樣的。