第四章——檢索數據(MYSQL必知必會)


SELECT語句
SQL語句是由簡單的英語單詞構成的。這些單詞稱爲關鍵字,每個SQL語句都是由一個或多個關鍵字構成的:大概,最經常使用的SQL語句就是SELECT語句了 。它的用途是從一個或多個表中檢索信息 。

 爲了使用SELECT檢索表數據,必須至少給出兩條信息一一想選擇什麼 ,以及從什麼地方選擇。

SELECT作爲檢索語句可以 檢索單個列,也可以多個列,也可以所有列。
注意點:

  • 對於大小寫:SQL語句是不區分大小寫的,因此SELECT和select是沒有區別的,Select也是無所謂的,不過爲了已於閱讀和調試,經常把關鍵字大寫,對於所有列和表名實用小寫。

  • 對於使用空格:在處理SQL語句時,所有空格都會被忽略,SQL語句可以一行給出,也可以分成多行。大多數都是分成多行來易於閱讀和調試。

  • 對於逗號:在選擇多個列時,一定要在列名後面加上逗號,倒是最後一個則不需要,否則會會出錯。

  • 對於使用通配符’‘:一般除非確實需要表中的每列,否則最好不使用通配符,雖然敲起來好像很省事,但是檢索不需要的列通常會降低檢索和應用程序的性能。但也是有優點的,比如能檢索出未知列。

檢索不同的行
解決辦法:使用DISTINCT。
DISTINCT關鍵字必須放在列的前面。但是很不能部分使用DISTINCT,DISTINCT關鍵字應用於所有列而不僅僅是前置它的列。如果給出SELECT DISTINCT name1,name2, 除非指定的兩個列都不同,否則所有行都將被檢索出來。

限定結果
SELECT語句返回所有匹配行,它們可能是指表中每一行。爲了返回第一行或者前幾行,可使用LIMIT字句。

SELECT name1 
FROM table_name1; 
LIMIT 5;

此語句使用SELECT語句檢索單個列,LIMIT 5指示MYSQL返回不多於5行。

SELECT name1 
FROM table_name1;
LIMIT 5,5;

LIMIT 5,5指示MYSQL返回從行5開始的5行。第一個數爲開始位置,第二個數爲檢索的行數。

注意:

  • 所以,帶一個值的LIMIT總是從第一行開始,給出的數爲返回的行數。帶兩個值的LIMIT可以指定從行號爲第一個值的位置開始。

  • 行0:檢索出來的第一行爲行0而不是行1,因此,LIMIT 1,1將檢索出第二行而不是第一行。

  • MYSQL 5的LIMIT語法:MYSQL 5支持LIMIT的另一種替代語法。 LIMIT 4 OFFSET 3意爲從行3開始取4行,就像 LIMIT 3,4 一樣。

使用完全限制的表名
SQL語句可以直接通過列名引用列。也可能使用完全限定的名字來引用列(同時使用表名和列字)。比如:

SELECT table1.name1 
FROM table1;

當然,表名也可以完全限定:

SELECT table1.name1 
FROM database_name.table_name1;

這個功能也等於把上面例子的功能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章