5.1 創建查詢
1. 查詢的概念
查詢:就是向一個數據庫發出檢索信息的請求,從中提取符合特定條件的記錄。
查詢文件:
即保存實現查詢的SELECT-SQL命令的文件。查詢文件保存時,系統自動給出擴展名 .qpr;查詢被運行后,系統還會生成一個編譯后的查詢文件,擴展名為 .qpx。
查詢結果:
通過運行查詢文件得到的一個基于表和視圖的動態的數據集合。查詢結果可以用不同的形式來保存。查詢中的數據是只讀的。
查詢的數據源:可以是一張或多張相關的自由表、數據庫表、視圖。
2. 用查詢設計器創建查詢
基本步驟:
打開查詢設計器 → 添加創建查詢所基于的數據表 → 定義輸出內容 → 設置聯接、篩選、排序、分組條件 → 選擇查詢結果的輸出形式 → 保存查詢文件 →運行查詢。
(1)打開查詢設計器
方法1:
從文件菜單或工具欄上單擊新建 → 查詢 → 新建文件 → 進入查詢設計器
方法2:
當所用到的數據表已在項目中時,從項目管理器窗口中單擊數據 → 查詢 → 新建 → 新建查詢 → 進入查詢設計器
方法3:從命令窗口中輸入命令:
create query 查詢文件名 & 創建新查詢
modify query 查詢文件名 & 修改已存在的查詢
(2) 定義查詢的輸出內容
單擊字段選項卡 → 從可用字段列表框中單擊所需字段(當輸出的列不是直接來源于表中的字段時,單擊函數和表達式框邊的… 按鈕,打開表達式生成器,構造出所需的表達式)→ 單擊添加按鈕 → 所需字段自動出現在選定字段框中。
(3) 設置查詢的篩選條件
篩選條件決定將哪些記錄顯示出來。
在篩選框中構造篩選條件表達式時,要注意在實例框中輸入不同數據類型時的格式:
1) 字符串可以不帶引號(當與源表中的字段名相同時才用引號);
2) 日期型數值要用{ }括起來;
3) 邏輯型數據兩側要帶 .號,如 .T.,.F.
(4) 設置查詢結果的排序依據
排序決定查詢輸出結果中記錄顯示的順序。
設置方法:
單擊排序依據 → 從選定字段框選中字段 → 選擇升序或降序 → 單擊添加。
(5) 設置查詢結果的分組依據
分組是指將一組類似的記錄壓縮成一個結果記錄,目的是為了完成基于該組記錄的計算,比如:求平均值、總和、統計個數、其中的最大值、最小值等。
幾個常用的統計函數
功能 |
求平均值 |
求總和 |
求最大值 |
求最小值 |
統計個數 |
名稱 |
AVG() |
SUM() |
MAX() |
MIN() |
COUNT() |
用于分組的字段不一定是選定輸出的字段,但分組字段不能是一個計算字段。
可以用 滿足條件… 來對分組結果進行進一步篩選。
(6) 對查詢結果的其他設置
可以排除查詢結果中所有重復的行,并設置結果的記錄范圍。
(7) 選擇查詢結果的輸出類型
默認情況下,查詢結果將輸出在瀏覽窗口中,且其中的數據是只讀的。
設置其他輸出類型的方法:
打開查詢菜單 → 選擇查詢去向 → 在查詢去向對話框中選擇一種。一般多選擇表或報表。
(8)運行查詢
在查詢設計器打開的狀態下,單擊常用工具欄上的 !按鈕或從查詢菜單中選擇運行查詢。其他情況下,可從項目管理器中選中查詢文件并單擊運行按鈕,或從程序菜單中選擇執行命令,或從命令窗口中輸入: DO 查詢文件名。
(9) 創建多表查詢
打開查詢設計器 → 將所需的多個相關表添加進來 → 設置聯接條件 → 按上面(2)至(8)步進行。