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

mysql垂直合并兩張表

MySQL 是一種開源的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),廣泛應(yīng)用于 Web 應(yīng)用程序的開發(fā)和數(shù)據(jù)存儲。在數(shù)據(jù)庫應(yīng)用中,經(jīng)常需要合并不同表中的數(shù)據(jù),以便更好地進(jìn)行業(yè)務(wù)統(tǒng)計(jì)和分析。本文將簡單介紹如何使用 MySQL 垂直合并兩張表。

垂直合并是指將兩張表按照某個共同的列連接在一起,將它們的非重復(fù)列合并成一個新表。在 MySQL 中,可以使用 UNION 或 UNION ALL 關(guān)鍵字實(shí)現(xiàn)垂直合并。

-- 創(chuàng)建兩個測試表
CREATE TABLE table1 (
id INT(11) PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20),
age INT(11)
);
CREATE TABLE table2 (
id INT(11) PRIMARY KEY AUTO_INCREMENT,
address VARCHAR(50),
phone VARCHAR(20)
);
-- 插入測試數(shù)據(jù)
INSERT INTO table1 (name, age) VALUES ('Tom', 18), ('Jack', 20), ('Lucy', 22);
INSERT INTO table2 (address, phone) VALUES ('Beijing', '123456'), ('Shanghai', '789012'), ('Guangzhou', '345678');
-- 使用 UNION 實(shí)現(xiàn)垂直合并
SELECT id, name, age, null as address, null as phone FROM table1
UNION
SELECT id, null as name, null as age, address, phone FROM table2;
-- 使用 UNION ALL 實(shí)現(xiàn)垂直合并
SELECT id, name, age, null as address, null as phone FROM table1
UNION ALL
SELECT id, null as name, null as age, address, phone FROM table2;

通過以上代碼,我們可以看到,使用 UNION 關(guān)鍵字可以將兩張表中的記錄合并在一起,但會去掉重復(fù)數(shù)據(jù)。而 UNION ALL 關(guān)鍵字則可以將兩張表中所有的記錄合并在一起,并保留重復(fù)數(shù)據(jù)。

注意,在使用 UNION 或 UNION ALL 進(jìn)行垂直合并時,需要保證兩張表中要合并的列的類型和個數(shù)是匹配的。