select(SQL中的)

select(SQL中的)

本詞條是多義詞,共5個義項
更多義項 ▼ 收起列表 ▲

英文select【si'lekt】。 中文意思為選擇、挑選。這還是一條計算機SQL資料庫中中常用的函式。在網頁HTML中的select是個選擇對象。

基本介紹

  • 中文名:選擇
  • 外文名:select
  • 函式SQL資料庫
  • 選擇對象:網頁HTML
  • 聲明WHERE 子句
簡介,子句,實例套用,SELECT Column 實例,SELECT * 實例,

簡介

SELECT 將從一個或更多表中返回記錄行。SELECT 通常的處理如下:
計算列出在 FROM 中的所有元素。(FROM 中的每個元素都是一個真正的或者虛擬的表。)如果在 FROM 列表里聲明了多過一個元素,那么他們就交叉連線在一起。
如果聲明WHERE 子句,那么在輸出中消除所有 不滿足條件的行。
如果聲明了 GROUP BY 子句,輸出就分成匹配一個或多個數值的不同組裡。如果出現了 HAVING 子句,那么它消除那些不滿足給出條件的組
實際輸出行的時候,SELECT 先為每個選出的行計算輸出表達式
使用 UNION,INTERSECT, 和 EXCEPT,我們可以把多個 SELECT 語句的輸出合併成一個結果集。UNION 操作符返回在兩個結果集或者其中一個中的行, INTERSECT 操作符返回嚴格地在兩個結果集中都有的行。EXCEPT 操作符返回在第一個結果集中,但是不在第二個結果集中的行。不管哪種情況, 重複的行都被刪除,除非聲明了 ALL。
如果聲明了 ORDER BY 子句,那么返回的行是按照指定的順序排序的。如果沒有給出 ORDER BY,那么數據行是按照系統認為可以最快生成的方法給出的。
DISTINCT 從結果中刪除那些重複的行。DISTINCT ON 刪除那些匹配所有指定表達式的行。ALL (預設)將返回所有候選行,包括重複的。
如果給出了 LIMIT 或者 OFFSET 子句,那么 SELECT 語句只返回結果行的一個子集。
如果聲明了 FOR UPDATE 或者 FOR SHARE 子句, SELECT 語句對並發的更新鎖住選定的行。
你必須有 SELECT 許可權用來從表中讀取數值。使用 FOR UPDATE FOR SHARE 還要求 UPDATE 許可權。

子句

從資料庫中檢索行,並允許從一個或多個表中選擇一個或多個行或列。雖然 SELECT 語句的完整語法較複雜,但是其主要的子句可歸納如下:
SELECTselect_list[INTOnew_table]FROMtable_source[WHEREsearch_condition][GROUPBYgroup_by_expression][HAⅥNGsearch_condition][ORDERBYorder_expression[ASC|DESC]]
可以在查詢之間使用 UNION 運算符,以將查詢的結果組合成單個結果集
語法
SELECTstatement::=<query_expression>[ORDERBY{order_by_expression|column_position[ASC|DESC]}[,...n]][COMPUTE{{AVG|COUNT|MAX|MIN|SUM}(expression)}[,...n][BYexpression[,...n]]][FOR{BROWSE|XML{RAW|AUTO|EXPLICIT}[,XMLDATA][,ELEMENTS][,BINARYbase64]}][OPTION(<query_hint>[,...n])]<queryexpression>::={<queryspecification>|(<queryexpression>)}[UNION[ALL]<queryspecification|(<queryexpression>)[...n]]<queryspecification>::=SELECT[ALL|DISTINCT][{TOPinteger|TOPintegerPERCENT}[WITHTIES]]<select_list>[INTOnew_table][FROM{<table_source>}[,...n]][WHERE<search_condition>][GROUPBY[ALL]group_by_expression[,...n][WITH{CUBE|ROLLUP}]][HAⅥNG<search_condition

實例套用

以下是"Customers" 表的數據:
CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1
Alfreds Futterkiste
Maria Anders
Obere Str. 57
Berlin
12209
Germany
2
Ana Trujillo Emparedados y helados
Ana Trujillo
Avda. de la Constitución 2222
México D.F.
05021
Mexico
3
Antonio Moreno Taquería
Antonio Moreno
Mataderos 2312
México D.F.
05023
Mexico
4
Around the Horn
Thomas Hardy
120 Hanover Sq.
London
WA1 1DP
UK
5
Berglunds snabbköp
Christina Berglund
Berguvsvägen 8
Luleå
S-958 22
Sweden

SELECT Column 實例

下面的 SQL 語句從 "Customers" 表中選取 "CustomerName" 和 "City" 列:
SELECTCustomerName,CityFROMCustomers;

SELECT * 實例

下面的 SQL 語句從 "Customers" 表中選取所有列:
SELECT*FROMCustomers;

相關詞條

熱門詞條

聯絡我們