SQL是英文Structured Query Language的縮寫,意思為結構化查詢語言。SQL語言的主要功能就是同各種數據庫建立聯系,進行溝通。按照ANSI(美國國家標准協會)的規定,SQL被作為關系型數據庫管理系統的標准語言。SQL語句可以用來執行各種各樣的操作,例如更新數據庫中的數據,從數據庫中提取數據等。目前,絕大多數流行的關系型數據庫管理系統,如Oracle, Sybase, Microsoft SQL Server,Access等都采用了SQL語言標准。雖然很多數據庫都對SQL語句進行了再開發和擴展,但是包括Select, Insert, Update, Delete, Create, 以及Drop在內的標准的SQL命令仍然可以被用來完成幾乎所有的數據庫操作。下面,我們就來詳細介紹一下SQL語言的基本知識。
數據庫表格
一個典型的關系型數據庫通常由一個或多個被稱作表格的對象組成。數據庫中的所有數據或信息都被保存在這些數據庫表格中。數據庫中的每一個表格都具有自己唯一的表格名稱,都是由行和列組成,其中每一列包括了該列名稱,數據類型,以及列的其它屬性等信息,而行則具體包含某一列的記錄或數據。以下,是一個名為天氣的數據庫表格的實例。
城市 最高氣溫 最低氣溫
北京 10 5
上海 15 8
天津 8 2
重慶 20 13
該表格中“城市”, “最高氣溫”和“最低氣溫”就是三個不同的列,而表格中的每一行則包含了具體的表格數據。
數據查詢
在眾多的SQL命令中,select語句應該算是使用最頻繁的。Select語句主要被用來對數據庫進行查詢並返回符合用戶查詢標准的結果數據。Select語句的語法格式如下:
select column1 [, column2,etc] from tablename
[where condition];
([] 表示可選項)
select語句中位於select關鍵詞之後的列名用來決定那些列將作為查詢結果返回。用戶可以按照自己的需要選擇任意列,還可以使用通配符“*”來設定返回表格中的所有列。
select語句中位於from關鍵詞之後的表格名稱用來決定將要進行查詢操作的目標表格。
Select語句中的where可選從句用來規定哪些數據值或哪些行將被作為查詢結果返回或顯示。
在where條件從句中可以使用以下一些運算符來設定查詢標准:
= 等於
> 大於
< 小於
>= 大於等於
<= 小於等於
<> 不等於
除了上面所提到的運算符外,LIKE運算符在where條件從句中也非常重要。LIKE運算符的功能非常強大,通過使用LIKE運算符可以設定只選擇與用戶規定格式相同的記錄。此外,我們還可以使用通配符“%”用來代替任何字符串。舉例如下:
select firstname, lastname, city
from employee
where firstname LIKE ‘E%’;
(注意,字符串必須被包含在單括號內)
上述SQL語句將會查詢所有名稱以E開頭的姓名。或者,通過如下語句:
select * from employee
where firstname = ‘May’;
查詢所有名稱為May的行