從 FROM 子句中的列表中指定哪些記錄受到 SELECT, UPDATE, 或 DELETE 語句的影響。
SELECT 字段表
FROM tableexpression
WHERE標準
包含 WHERE 子句的SELECT 語句具有以下幾個部分:
部分 |
說明 |
fieldlist |
要和任何字段名別名, 選擇斷定 (ALL, DISTINCT, DISTINCTROW, 或 TOP), 或其他 SELECT 語句 選擇一起檢索的字段名稱。 |
tableexpression |
表的名稱,可從這些表中獲取數(shù)據(jù)。 |
criteria |
使查詢結果中能包括記錄的表達式 |
Microsoft Jet數(shù)據(jù)庫引擎選擇符合 WHERE 子句所列條件的記錄。.如果未指定 WHERE 子句,則查詢將返回表中的所有行。如果你在查詢中指定了多于一個的表,且沒包括 WHERE 子句 或 JOIN 子句, 你的查詢會啟動表的 Cartesian產(chǎn)品
WHERE 是可選的,但在使用時必須接在 FROM 之后。例如,可在銷售部門選擇全部雇員(WHERE Dept = 'Sales')或年齡在 18 歲 至 30 歲之間(WHERE Age Between 18 And 30)的全部客戶。
如果未在多重表中使用 JOIN 子句完成 SQL 聯(lián)結運算,則不能更新所得到的 Recordset 對象。
WHERE 與 HAVING 相近。WHERE 決定應選擇哪個記錄。與此相似,一旦用 GROUP BY 將記錄分組,則 HAVING 將決定顯示哪個記錄。
使用 WHERE 子句可消除您不想用 GROUP BY 子句進行分組的記錄。
用多種不同的表達式來確定 SQL 語句將返回哪些字段。例如,下行 SQL 語句將選擇薪金超過 $21,000 的所有雇員:
SELECT LastName, Salary
FROM Employees
WHERE Salary > 21000;
WHERE 子句最多可包含 40 個表達式,這些表達式由諸如 And 和 Or 之類的邏輯操作符鏈接。
當您輸入的字段名包含空格或標點符號時,請用括號 ([ ]) 將它括在其中。例如,一個客戶信息表可能包含有關特定客戶的信息:
SELECT [Customer’s Favorite Restarant]
當您指定 criteria 參數(shù)時,即使沒有使用 U.S. 版本的 Microsoft Jet 數(shù)據(jù)庫引擎,也必須用 U.S. 格式表示日期文字。例如,在英國將 May 10, 1996 寫成 10/5/96,而在美國卻寫成 5/10/96。必須確保將日期文字與數(shù)字符號 (#) 括起來,如下例所示。
為在英國的數(shù)據(jù)庫中查找日期為 May 10, 1996 的記錄,必須使用下列 SQL 語句:
SELECT *
FROM Orders
WHERE ShippedDate = #5/10/96#;
也可使用 DateValue 函數(shù),這是 Microsoft Windows 建立的國際標準設置值。例如,在美國這樣使用此代碼:
SELECT *
FROM Orders
WHERE ShippedDate = DateValue('5/10/96');
而在英國這樣使用此代碼:
SELECT *
FROM Orders
WHERE ShippedDate = DateValue('10/5/96');
注意:如果判別串中引用的列是GUID型的,判別表達式會使用略有差異的語法。
WHERE ReplicaID = {GUID {12345678-90AB-CDEF-1234-567890ABCDEF}}
必須確保將以上所示嵌套大括弧和連字符都包括在內(nèi)。
|