在MySQL數(shù)據(jù)庫中,有時(shí)候需要通過查詢多個(gè)表的數(shù)據(jù)來滿足業(yè)務(wù)需求。下面我們就來介紹一下如何使用MySQL查詢語句從兩張表中獲取數(shù)據(jù)。
假設(shè)我們有兩張表:user和address,它們的表結(jié)構(gòu)如下所示:
CREATE TABLE user ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, age INT(3) NOT NULL, PRIMARY KEY (id) ); CREATE TABLE address ( id INT(11) NOT NULL AUTO_INCREMENT, user_id INT(11) NOT NULL, province VARCHAR(100) NOT NULL, city VARCHAR(100) NOT NULL, PRIMARY KEY (id), FOREIGN KEY (user_id) REFERENCES user (id) );
現(xiàn)在我們需要查詢所有用戶的姓名、年齡和所在城市,可以使用以下查詢語句:
SELECT user.name, user.age, address.city FROM user INNER JOIN address ON user.id = address.user_id;
以上查詢語句使用了INNER JOIN語句,將兩張表中的數(shù)據(jù)通過用戶ID進(jìn)行了關(guān)聯(lián),從而得到了想要的結(jié)果。
如果我們只需要查詢某一位用戶的姓名、年齡和所在城市,可以在查詢語句中添加WHERE條件來限定查詢結(jié)果,例如:
SELECT user.name, user.age, address.city FROM user INNER JOIN address ON user.id = address.user_id WHERE user.id = 1;
以上查詢語句將只返回ID為1的用戶的姓名、年齡和所在城市。
以上就是從兩張表中查詢數(shù)據(jù)的方法,希望對大家有所幫助。