MySQL連接查詢實(shí)例詳解
本文實(shí)例講述了MySQL連接查詢。分享給大家供大家參考,具體如下:
創(chuàng)建表suppliers:
CREATE TABLE suppliers ( s_id int NOT NULL AUTO_INCREMENT, s_name char(50) NOT NULL, s_city char(50) NULL, s_zip char(10) NULL, s_call CHAR(50) NOT NULL, PRIMARY KEY (s_id) ) ; INSERT INTO suppliers(s_id, s_name,s_city, s_zip, s_call) VALUES(101,'FastFruit Inc.','Tianjin','300000','48075'), (102,'LT Supplies','Chongqing','400000','44333'), (103,'ACME','Shanghai','200000','90046'), (104,'FNK Inc.','Zhongshan','528437','11111'), (105,'Good Set','Taiyuang','030000', '22222'), (106,'Just Eat Ours','Beijing','010', '45678'), (107,'DK Inc.','Zhengzhou','450000', '33332');
內(nèi)連接
SELECT suppliers.s_id, s_name,f_name, f_price FROM fruits ,suppliers WHERE fruits.s_id = suppliers.s_id;
使用 inner join
語法進(jìn)行內(nèi)連接查詢
SELECT suppliers.s_id, s_name,f_name, f_price FROM fruits INNER JOIN suppliers ON fruits.s_id = suppliers.s_id;
創(chuàng)建表orders:
CREATE TABLE orders ( o_num int NOT NULL AUTO_INCREMENT, o_date datetime NOT NULL, c_id int NOT NULL, PRIMARY KEY (o_num) ) ; INSERT INTO orders(o_num, o_date, c_id) VALUES(30001, '2008-09-01', 10001), (30002, '2008-09-12', 10003), (30003, '2008-09-30', 10004), (30004, '2008-10-03', 10005), (30005, '2008-10-08', 10001);
左連接
SELECT customers.c_id, orders.o_num FROM customers LEFT OUTER JOIN orders ON customers.c_id = orders.c_id;
右連接
SELECT customers.c_id, orders.o_num from customers RIGHT OUTER JOIN orders ON customers.c_id = orders.c_id;
復(fù)合條件連接查詢
SELECT customers.c_id, orders.o_num FROM customers INNER JOIN orders ON customers.c_id = orders.c_id AND customers.c_id = 10001; SELECT suppliers.s_id, s_name,f_name, f_price FROM fruits INNER JOIN suppliers ON fruits.s_id = suppliers.s_id ORDER BY fruits.s_id;
【例.46】在fruits表和suppliers表之間使用內(nèi)連接查詢,查詢之前,查看兩個(gè)表的結(jié)構(gòu)
SELECT suppliers.s_id, s_name,f_name, f_price FROM fruits ,suppliers WHERE fruits.s_id = suppliers.s_id;
【例.47】在fruits表和suppliers表之間使用INNER JOIN
語法進(jìn)行內(nèi)連接查詢
SELECT suppliers.s_id, s_name,f_name, f_price FROM fruits INNER JOIN suppliers ON fruits.s_id = suppliers.s_id;
【例.48】查詢供應(yīng)f_id='a1'的水果供應(yīng)商提供的其他水果種類
SELECT f1.f_id, f1.f_name FROM fruits AS f1, fruits AS f2 WHERE f1.s_id = f2.s_id AND f2.f_id = 'a1';
【例.49】在customers表和orders表中,查詢所有客戶,包括沒有訂單的客戶,SQL語法如下
SELECT customers.c_id, orders.o_num FROM customers LEFT OUTER JOIN orders ON customers.c_id = orders.c_id;
【例.50】在customers表和orders表中,查詢所有訂單,包括沒有客戶的訂單
SELECT customers.c_id, orders.o_num from customers RIGHT OUTER JOIN orders ON customers.c_id = orders.c_id;
【例.51】在customers表和orders表中,使用INNER JOIN
語法查詢customers表中ID為10001、的客戶的訂單信息
SELECT customers.c_id, orders.o_num FROM customers INNER JOIN orders ON customers.c_id = orders.c_id AND customers.c_id = 10001;
【例.52】在fruits表和suppliers表之間使用INNER JOIN
語法進(jìn)行內(nèi)連接查詢,并對(duì)查詢結(jié)果排序
SELECT suppliers.s_id, s_name,f_name, f_price FROM fruits INNER JOIN suppliers ON fruits.s_id = suppliers.s_id ORDER BY fruits.s_id;
更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL常用函數(shù)大匯總》、《MySQL日志操作技巧大全》、《MySQL事務(wù)操作技巧匯總》、《MySQL存儲(chǔ)過程技巧大全》及《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》
希望本文所述對(duì)大家MySQL數(shù)據(jù)庫計(jì)有所幫助。
- MySql連接查詢方式詳解
- mysql連接查詢?cè)斀?/a>
- mysql連接查詢中and與where的區(qū)別淺析
- MySQL連接查詢你真的學(xué)會(huì)了嗎?
- mysql連接查詢、聯(lián)合查詢、子查詢?cè)砼c用法實(shí)例詳解
- mysql連接查詢(左連接,右連接,內(nèi)連接)
- 經(jīng)典mysql連接查詢例題
- mysql子查詢(單行子查詢,多行子查詢,多列子查詢)
- 一文了解MySQL的四大子查詢
- MySQL子查詢的使用詳解下篇
- MySQL子查詢的使用詳解上篇
- Mysql子查詢關(guān)鍵字的使用方式(exists)
- MySQL多表聯(lián)合查詢、連接查詢、子查詢的實(shí)現(xiàn)
相關(guān)文章
MySQL過濾重復(fù)數(shù)據(jù)的兩種方法示例
數(shù)據(jù)庫生成環(huán)境中經(jīng)常會(huì)遇到表中有重復(fù)的數(shù)據(jù),或者進(jìn)行關(guān)聯(lián)過程中產(chǎn)生重復(fù)數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于MySQL過濾重復(fù)數(shù)據(jù)的兩種方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-04-04新裝MySql后登錄出現(xiàn)root帳號(hào)提示mysql ERROR 1045 (28000): Access denied
這篇文章主要介紹了新裝MySql后登錄出現(xiàn)root帳號(hào)提示mysql ERROR 1045 (28000): Access denied for use的解決辦法,需要的朋友可以參考下2017-01-01MYSQL必知必會(huì)讀書筆記 第一章(基礎(chǔ))
數(shù)據(jù)庫(database)是一個(gè)以某種有組織的方式存儲(chǔ)的數(shù)據(jù)集合。本文是小編日常收集整理些有關(guān)mysql的知識(shí),非常具有參考價(jià)值,感興趣的朋友一起學(xué)習(xí)吧2016-05-05MySQL數(shù)據(jù)庫安全秘籍之守護(hù)數(shù)據(jù)金庫防火防盜防攻擊
MySQL是許多公司和組織的關(guān)鍵數(shù)據(jù)庫,因此其安全性的重要性如此顯而易見,為了確保MySQL的安全性,需要采取多種措施來增強(qiáng)其安全性,本文給大家介紹MySQL數(shù)據(jù)庫安全秘籍之守護(hù)數(shù)據(jù)金庫防火防盜防攻擊,感興趣的朋友一起看看吧2023-03-03淺談一下MyISAM和InnoDB存儲(chǔ)引擎的區(qū)別
這篇文章主要介紹了MyISAM和InnoDB存儲(chǔ)引擎的區(qū)別,存儲(chǔ)引擎是MySQL中特有的一個(gè)術(shù)語,其它數(shù)據(jù)庫中沒有,實(shí)際上存儲(chǔ)引擎是一個(gè)表存儲(chǔ)/組織數(shù)據(jù)的方式,今天就跟小編來看看MyISAM和InnoDB存儲(chǔ)引擎的區(qū)別,需要的朋友可以參考下2023-04-04Linux環(huán)境下安裝mysql5.7.36數(shù)據(jù)庫教程
大家好,本篇文章主要講的是Linux環(huán)境下安裝mysql5.7.36數(shù)據(jù)庫教程,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12