SQL是與關係數據庫進行交互的強大工具。使用SQL中的表格時,通常需要將數據組合起來。這是加入操作幫助的地方。左聯接和左外連接是兩個常用的命令。儘管它們看起來有所不同,但實際上它們執行了相同的功能。讓我們了解SQL左JOIN與左外外連接之間的工作和差異。
:返回匹配行的輔助表。 >
SELECT columns FROM left_table LEFT JOIN right_table ON left_table.column_name = right_table.column_name;column_name
:用於連接兩個表的列。
語法
SELECT employees.name, departments.department_name FROM employees LEFT JOIN departments ON employees.department_id = departments.id;使用與上述相同的示例,我們可以按以下方式重寫我們的查詢:
> 如您所見,語法與左聯接相同。唯一的區別是包含ofter。
>>
左外聯機的示例>此查詢還可以檢索所有員工及其相應的部門名稱,就像左JOIN一樣。如果未分配給任何部門的員工,則結果將顯示為部門名稱的null。
也閱讀:從基礎到提高級別的SQL指南 左JOIN 和
實際示例:左聯接和左外連接
現在,讓我們創建員工和部門表。
輸出:
輸出:
>左JOIN查詢
將您的SQL知識與這些SQL項目進行測試! Q3。左加入是否包括null值?是的,當左表不匹配一排時,左聯節點從右表中的列返回。我可以使用左連接和左外連接互換?是的,您可以在SQL查詢中使用左聯接和左外連接。兩者都會產生相同的結果。 > sql左聯接與左外的聯接
可能會出現不同,但它們在SQL中在功能上相同。唯一的區別在於語法:
關鍵字,以確保清晰。 兩個命令都返回相同的結果,因此它們之間的選擇是個人或組織偏好的問題。
>
>使用員工和部門表創建示例數據庫,然後使用左JOIN和右JOIN示例,您可以使用以下SQL命令。
>步驟1:創建數據庫SELECT columns
FROM left_table
LEFT JOIN right_table
ON left_table.column_name = right_table.column_name;
>步驟2:創建表
SELECT employees.name, departments.department_name
FROM employees
LEFT JOIN departments
ON employees.department_id = departments.id;
步驟3:將數據插入表
現在,將一些示例數據插入兩個表中:SELECT columns
FROM left_table
LEFT OUTER JOIN right_table
ON left_table.column_name = right_table.column_name;
SELECT employees.name, departments.department_name
FROM employees
LEFT OUTER JOIN departments
ON employees.department_id = departments.id;
現在,數據庫和表已使用數據填充並填充了,您可以運行左JOIN和右JOIN查詢。
CREATE DATABASE company_db;
USE company_db;
輸出:右加入查詢
-- Create the 'departments' table
CREATE TABLE departments (
id INT PRIMARY KEY,
department_name VARCHAR(100) NOT NULL
);
-- Create the 'employees' table
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
department_id INT,
FOREIGN KEY (department_id) REFERENCES departments(id)
);
輸出:何時使用左JOIN或左外連接
>數據檢索
常見問題
> Q1。左聯接和左外連接之間有什麼區別?沒有區別。 左聯接和左外連接在功能上相同。術語“外部”是可選的,用於清晰。我什麼時候應該使用左JOIN?當您需要從左表中的所有記錄時,即使在右表中沒有匹配記錄。
以上是sql左聯接與左外的聯接的詳細內容。更多資訊請關注PHP中文網其他相關文章!