程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Access數據庫 >> 關於Access數據庫 >> 用查詢設計器進行聯合查詢設計

用查詢設計器進行聯合查詢設計

編輯:關於Access數據庫

一、聯合查詢的定義及相關基本概念                                     
      “聯合查詢”也有稱為“聯集查詢”,聯合查詢是通過UNION運算符將兩個或多個表、查詢結果或SELECT語句組合在一起,而構成的查詢。



       ACCESS 查詢設計中“聯合查詢”對於初學者來說是相對較難的一種查詢方式,因為 ACCESS 沒有為我們提供建立聯合查詢的可視化向導,也不能直接用 Access 查詢設計器直觀的進行編輯設計,而必須自行在查詢的 SQL 視圖中編寫 SELECT 命令語句,對於 SQL 語句不是很熟悉或是初學者來說,有一定的難度。

SQL語法:
[TABLE] query1 UNION [ALL] [TABLE] query2 [UNION [ALL] [TABLE] queryn [ ... ]]

運算符:UNION

    1、UNION是聯合查詢的關鍵運算符,正是通過UNION將兩個或多個查詢結果、表或SELECT語句合並起來;
    2、在默認狀態,UNION運算符會從頭至尾檢查合並後的結果,並去除重復記錄,因此會減慢查詢的運行速度;
   3、在UNION後面加上ALL,則不會遍歷檢查合並後的結果,從而提高查詢的運行速度,但這樣會直接返回所有記錄,而不會剔除其中重復記錄。

聯合查詢基本原則:

  •   被合並的對象(查詢結果、表及SELECT語句)輸出的字段數必須相同;

  •   字段類型無須相同的大小或數據類型,但數據類型須彼此相容;

  •   最後一個SELECT語句才可以擁有ORDER BY參數,對查詢結果進行排序;

  •   各個查詢結果或SELECT語句都可以使用GROUP BY與HAVING參數,但參數並不影響合並查詢結果。

    二、用查詢設計器進行聯合查詢設計                                     
           前面我們說過不能直接用查詢設計器進行直觀聯合查詢設計,但這並不是說不能用查詢設計器來進行設計,我們可以用查詢設計器先得到各查詢結果的SELECT語句,再在SQL設計視圖中加入運算符UNION,這樣既可以檢視各查詢結果的正確性,同時也減少了我們書寫SELECT語句的工作量。下面我們就結合實例學習如何用查詢設計器進行聯合查詢的設計。

    2-1查詢范例:
          “羅斯文”數據庫中,業務往來單位的數據分為“客戶”數據與“供應商”數據,為了方便管理,我們可以通過“聯合查詢”將兩個表數據合並進行管理,建立“業務往來單位”查詢,並按所在城市、公司進行排序;
    步驟一:獲得客戶查詢結果,並將查詢結果保存為“業務往來單位”查詢


    步驟二:獲得供應商查詢結果SELECT語句

    步驟三:在SQL編輯視圖中,組合兩個查詢的語句,完成聯合查詢

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved