首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL 資料操作入門基礎(二):ISQL/w 查詢工具實戰與多表連接查詢

     編輯:關於SqlServer

啟動 ISQL/w 執行互動式查詢

  1. 從 SQL Server 程式群組 啟動 ISQL/w。
  2. 輸入伺服器名稱(本機即電腦名)、登入帳密或選擇「可信連接」,點擊 Connect。
  3. 查詢視窗頂端下拉選單選擇資料庫(範例資料庫 pubs)。

第一個 SELECT 查詢

SELECT phone FROM authors WHERE au_name = 'Ringer';

點擊綠色三角形「執行查詢」,結果視窗顯示符合條件的電話號碼。

SELECT 基本語法變化

  • 查詢所有列:SELECT phone FROM authors;(無 WHERE 條件)。
  • 多欄位查詢:SELECT au_fname, au_lname, phone FROM authors; 欄位以逗號分隔。
  • 查詢所有欄位:SELECT * FROM authors; 星號代表所有欄位,亦可用於檢視表結構。

多表查詢與連接關鍵

單純列出多表(SELECT au_lname, title FROM authors, titles)會產生笛卡兒積,結果為所有組合,無意義。

正確做法:透過關聯欄位建立連接。

  • authors.au_id、titles.title_id 為各自主鍵。
  • 第三張表 titleauthor 存放 au_id 與 title_id 對應關係。
  • 三表連接查詢:
SELECT au_name, title
FROM authors, titles, titleauthor
WHERE authors.au_id = titleauthor.au_id
  AND titles.title_id = titleauthor.title_id;

欄位名前綴 表名. 避免同名欄位混淆。

一對多 vs 多對多 連接策略

  • 多對多(如作者-書名):需中介表(titleauthor)。
  • 一對一/一對多(如書名-出版社):共用欄位(pub_id)直接連接:
SELECT title, pub_name
FROM titles, publishers
WHERE titles.pub_id = publishers.pub_id;
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved