色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql五張表外連接查詢

榮姿康1年前8瀏覽0評論

MySQL是最流行的開源數據庫管理系統之一,擁有強大的查詢功能。在MySQL中,外連接可以讓我們在查詢中聯結兩個或多個表,并在結果集中展示不同類型的數據。

MySQL中的外連接可以分為左外連接、右外連接和完全外連接。在這篇文章中,我們將介紹MySQL中五張表的外連接查詢的例子。

表1: orders

CREATE TABLE orders (
order_id int(11) NOT NULL AUTO_INCREMENT,
customer_id int(11) DEFAULT NULL,
order_date date DEFAULT NULL,
total_amount decimal(10,2) DEFAULT NULL,
PRIMARY KEY (order_id)
);

表2: customers

CREATE TABLE customers (
customer_id int(11) NOT NULL AUTO_INCREMENT,
customer_name varchar(50) DEFAULT NULL,
city varchar(50) DEFAULT NULL,
PRIMARY KEY (customer_id)
);

表3: products

CREATE TABLE products (
product_id int(11) NOT NULL AUTO_INCREMENT,
product_name varchar(50) DEFAULT NULL,
price decimal(10,2) DEFAULT NULL,
PRIMARY KEY (product_id)
);

表4: order_items

CREATE TABLE order_items (
order_item_id int(11) NOT NULL AUTO_INCREMENT,
order_id int(11) DEFAULT NULL,
product_id int(11) DEFAULT NULL,
quantity int(11) DEFAULT NULL,
PRIMARY KEY (order_item_id)
);

表5: suppliers

CREATE TABLE suppliers (
supplier_id int(11) NOT NULL AUTO_INCREMENT,
supplier_name varchar(50) DEFAULT NULL,
city varchar(50) DEFAULT NULL,
PRIMARY KEY (supplier_id)
);

左外連接查詢orders和customers表

查詢所有的order記錄和匹配的customer信息,如果某個order沒有對應的customer,則返回NULL。

SELECT orders.order_id, orders.order_date, customers.customer_name, customers.city
FROM orders
LEFT JOIN customers ON orders.customer_id = customers.customer_id;

右外連接查詢orders和customers表

查詢所有的customer記錄和匹配的order信息,如果某個customer沒有對應的order,則返回NULL。

SELECT orders.order_id, orders.order_date, customers.customer_name, customers.city
FROM customers
RIGHT JOIN orders ON customers.customer_id = orders.customer_id;

完全外連接查詢orders和customers表

查詢所有的order和customer記錄,如果某個order或customer沒有對應的記錄,則返回NULL。

SELECT orders.order_id, orders.order_date, customers.customer_name, customers.city
FROM orders
FULL OUTER JOIN customers ON orders.customer_id = customers.customer_id;

多表外連接查詢

查詢所有的order記錄,以及每個order的商品,商品價格和供應商名稱。如果某個order沒有對應的商品和供應商記錄,則返回NULL。

SELECT orders.order_id, products.product_name, products.price, suppliers.supplier_name
FROM ((orders
LEFT JOIN order_items ON orders.order_id = order_items.order_id)
LEFT JOIN products ON order_items.product_id = products.product_id)
LEFT JOIN suppliers ON products.supplier_id = suppliers.supplier_id;

以上是MySQL中五張表的外連接查詢 示例,如有疑問可以查看MySQL的官方文檔或查詢其他在線資源。