使用Navicat的查詢生成器設計SELECT查詢(第1部分)

下載Navicat Premium最新版本

Navicat for MySQLPostgreSQLSQLiteMariaDBNavicat PremiumNon-Essentials版本中,查詢生成器允許任何人只使用粗略的SQL知識來創建和編輯查詢。在本文中,我們將使用它來編寫一個查詢來獲取在給定年份中發佈的電影中出現的演員列表。

Step 1:源數據庫

我們將要構建的查詢將針對Sakila示例數據庫運行。MySQL AB文檔團隊的前成員Mike Hillyer創建了Sakila數據庫,專門用於提供標準模式,用於書籍,教程和文章,就像您正在閱讀的那樣。

該數據庫包含許多以電影業爲主題的表格,涵蓋從演員和電影製片廠到視頻租賃店的所有內容。

Step 2:打開查詢生成器

您可以將查詢生成器視爲可視化構建查詢的工具。可以從“Query Builder”屏幕訪問它。讓我們通過打開一個新查詢來啓動它:

2.1 單擊主工具欄上的“Query”圖標,然後單擊“Object”工具欄中的“New Query”按鈕:

使用Navicat的查詢生成器設計SELECT查詢(第1部分)

2.2 在“Query Designer”中,單擊“Query Builder”按鈕以打開可視SQL生成器。

數據庫對象顯示在左窗格中,而右窗格分爲兩部分:上部“Design pane”窗格和下部“Syntax”窗格:

使用Navicat的查詢生成器設計SELECT查詢(第1部分)

Step 3:構建年度電影查詢的演員

首先選擇表格是個好主意,以便查詢生成器知道要爲字段列表顯示哪些字段:

3.1將表/視圖從左窗格拖到“Diagram Design”窗格,或者雙擊它以將其添加到查詢中。我們需要actor,film_actor和電影表。

3.2您可以通過單擊每個表旁邊的“”來指定表別名。要添加表別名,只需雙擊表名稱並在Diagram Design窗格中輸入別名。 請注意查詢生成器如何知道表關係。那是因爲已經在Table對象上聲明瞭外鍵約束:

使用Navicat的查詢生成器設計SELECT查詢(第1部分)

3.3要在查詢中包含字段,請在“Diagram Design”窗格中選中字段名稱的左側。要包括所有字段,請單擊對象標題的左側。選擇演員的名字和姓氏以及電影片名。

添加WHERE標準
單擊WHERE關鍵字旁邊的“< Click here to add conditions>”會添加默認的WHERE條件“< - > = < - >”。

單擊左側的“< - > = < - >”以選擇一個字段。這將打開一個彈出對話框,其中包含字段列表和編輯選項卡。
單擊“列表”選項卡,然後選擇f.release_year字段。
單擊“OK”關閉對話框。
接下來,單擊右側“< - > = < - >”以設置發佈年份。這次在“編輯”選項卡中輸入值“2006”。單擊“OK”關閉對話框。
單擊“OK”關閉“查詢生成器”。您現在應該在查詢編輯器中看到生成的SELECT語句:
SELECT
a.first_name,
a.last_name,
f.title
FROM
actor AS a
INNER JOIN film_actor AS fa ON fa.actor_id = a.actor_id
INNER JOIN film AS f ON fa.film_id = f.film_id
WHERE
f.release_year = 2006
單擊“Run”按鈕以執行查詢。結果將按電影標題排序:

使用Navicat的查詢生成器設計SELECT查詢(第1部分)

結論
無論您是初學者還是經驗DBA,Navicat的Query Builder都可以比以往更輕鬆地編寫SELECT查詢。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章