国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

本地的唐山網(wǎng)站建設(shè)零基礎(chǔ)seo入門教學(xué)

本地的唐山網(wǎng)站建設(shè),零基礎(chǔ)seo入門教學(xué),網(wǎng)站app服務(wù)器租用,企業(yè)宣傳單頁設(shè)計SQL零基礎(chǔ)入門學(xué)習(xí)(七) SQL 連接(JOIN) SQL join 用于把來自兩個或多個表的行結(jié)合起來。 下圖展示了 LEFT JOIN、RIGHT JOIN、INNER JOIN、OUTER JOIN 相關(guān)的 7 種用法。 SQL JOIN SQL JOIN 子句用于把來自兩個或多個表的行結(jié)合起來,基…

SQL零基礎(chǔ)入門學(xué)習(xí)(七)

SQL 連接(JOIN)

SQL join 用于把來自兩個或多個表的行結(jié)合起來。

下圖展示了 LEFT JOIN、RIGHT JOIN、INNER JOIN、OUTER JOIN 相關(guān)的 7 種用法。
在這里插入圖片描述

SQL JOIN

SQL JOIN 子句用于把來自兩個或多個表的行結(jié)合起來,基于這些表之間的共同字段。

最常見的 JOIN 類型:SQL INNER JOIN(簡單的 JOIN)。 SQL INNER JOIN 從多個表中返回滿足 JOIN 條件的所有行。

語法:

SELECT column1, column2, ...
FROM table1
JOIN table2 ON condition;

參數(shù)說明:
column1, column2, …:要選擇的字段名稱,可以為多個字段。如果不指定字段名稱,則會選擇所有字段。
table1:要連接的第一個表。
table2:要連接的第二個表。
condition:連接條件,用于指定連接方式。

演示數(shù)據(jù)庫

在本教程中,我們將使用 RUNOOB 樣本數(shù)據(jù)庫。

下面是選自 “Websites” 表的數(shù)據(jù):

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘寶          | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鳥教程      | http://www.runoob.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+

下面是 “access_log” 網(wǎng)站訪問記錄表的數(shù)據(jù):

mysql> SELECT * FROM access_log;
+-----+---------+-------+------------+
| aid | site_id | count | date       |
+-----+---------+-------+------------+
|   1 |       1 |    45 | 2016-05-10 |
|   2 |       3 |   100 | 2016-05-13 |
|   3 |       1 |   230 | 2016-05-14 |
|   4 |       2 |    10 | 2016-05-14 |
|   5 |       5 |   205 | 2016-05-14 |
|   6 |       4 |    13 | 2016-05-15 |
|   7 |       3 |   220 | 2016-05-15 |
|   8 |       5 |   545 | 2016-05-16 |
|   9 |       3 |   201 | 2016-05-17 |
+-----+---------+-------+------------+
9 rows in set (0.00 sec)

請注意,“Websites” 表中的 “id” 列指向 “access_log” 表中的字段 “site_id”。上面這兩個表是通過 “site_id” 列聯(lián)系起來的。

然后,如果我們運(yùn)行下面的 SQL 語句(包含 INNER JOIN):

SELECT Websites.id, Websites.name, access_log.count, access_log.date
FROM Websites
INNER JOIN access_log
ON Websites.id=access_log.site_id;

執(zhí)行以上 SQL 輸出結(jié)果如下:
在這里插入圖片描述

不同的 SQL JOIN

在我們繼續(xù)講解實(shí)例之前,我們先列出您可以使用的不同的 SQL JOIN 類型:

INNER JOIN:如果表中有至少一個匹配,則返回行
LEFT JOIN:即使右表中沒有匹配,也從左表返回所有的行
RIGHT JOIN:即使左表中沒有匹配,也從右表返回所有的行
FULL JOIN:只要其中一個表中存在匹配,則返回行

SQL INNER JOIN 關(guān)鍵字

INNER JOIN 關(guān)鍵字在表中存在至少一個匹配時返回行。

SQL INNER JOIN 語法

SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name=table2.column_name;

或:

SELECT column_name(s)
FROM table1
JOIN table2
ON table1.column_name=table2.column_name;

參數(shù)說明:
columns:要顯示的列名。
table1:表1的名稱。
table2:表2的名稱。
column_name:表中用于連接的列名。

注釋:INNER JOIN 與 JOIN 是相同的。
在這里插入圖片描述

演示數(shù)據(jù)庫

在本教程中,我們將使用 RUNOOB 樣本數(shù)據(jù)庫。

下面是選自 “Websites” 表的數(shù)據(jù):

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘寶          | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鳥教程      | http://www.runoob.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+

下面是 “access_log” 網(wǎng)站訪問記錄表的數(shù)據(jù):

mysql> SELECT * FROM access_log;
+-----+---------+-------+------------+
| aid | site_id | count | date       |
+-----+---------+-------+------------+
|   1 |       1 |    45 | 2016-05-10 |
|   2 |       3 |   100 | 2016-05-13 |
|   3 |       1 |   230 | 2016-05-14 |
|   4 |       2 |    10 | 2016-05-14 |
|   5 |       5 |   205 | 2016-05-14 |
|   6 |       4 |    13 | 2016-05-15 |
|   7 |       3 |   220 | 2016-05-15 |
|   8 |       5 |   545 | 2016-05-16 |
|   9 |       3 |   201 | 2016-05-17 |
+-----+---------+-------+------------+
9 rows in set (0.00 sec)

SQL INNER JOIN 實(shí)例

下面的 SQL 語句將返回所有網(wǎng)站的訪問記錄:

SELECT Websites.name, access_log.count, access_log.date
FROM Websites
INNER JOIN access_log
ON Websites.id=access_log.site_id
ORDER BY access_log.count;

執(zhí)行以上 SQL 輸出結(jié)果如下:
在這里插入圖片描述
注釋:INNER JOIN 關(guān)鍵字在表中存在至少一個匹配時返回行。如果 “Websites” 表中的行在 “access_log” 中沒有匹配,則不會列出這些行。

SQL LEFT JOIN 關(guān)鍵字

LEFT JOIN 關(guān)鍵字從左表(table1)返回所有的行,即使右表(table2)中沒有匹配。如果右表中沒有匹配,則結(jié)果為 NULL。

SQL LEFT JOIN 語法

SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name=table2.column_name;

或:

SELECT column_name(s)
FROM table1
LEFT OUTER JOIN table2
ON table1.column_name=table2.column_name;

注釋:在某些數(shù)據(jù)庫中,LEFT JOIN 稱為 LEFT OUTER JOIN。
在這里插入圖片描述

演示數(shù)據(jù)庫

在本教程中,我們將使用 RUNOOB 樣本數(shù)據(jù)庫。

下面是選自 “Websites” 表的數(shù)據(jù):

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘寶          | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鳥教程      | http://www.runoob.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+

下面是 “access_log” 網(wǎng)站訪問記錄表的數(shù)據(jù):

mysql> SELECT * FROM access_log;
+-----+---------+-------+------------+
| aid | site_id | count | date       |
+-----+---------+-------+------------+
|   1 |       1 |    45 | 2016-05-10 |
|   2 |       3 |   100 | 2016-05-13 |
|   3 |       1 |   230 | 2016-05-14 |
|   4 |       2 |    10 | 2016-05-14 |
|   5 |       5 |   205 | 2016-05-14 |
|   6 |       4 |    13 | 2016-05-15 |
|   7 |       3 |   220 | 2016-05-15 |
|   8 |       5 |   545 | 2016-05-16 |
|   9 |       3 |   201 | 2016-05-17 |
+-----+---------+-------+------------+
9 rows in set (0.00 sec)

SQL LEFT JOIN 實(shí)例

下面的 SQL 語句將返回所有網(wǎng)站及他們的訪問量(如果有的話)。

以下實(shí)例中我們把 Websites 作為左表,access_log 作為右表:

SELECT Websites.name, access_log.count, access_log.date
FROM Websites
LEFT JOIN access_log
ON Websites.id=access_log.site_id
ORDER BY access_log.count DESC;

執(zhí)行以上 SQL 輸出結(jié)果如下:
在這里插入圖片描述
注釋:LEFT JOIN 關(guān)鍵字從左表(Websites)返回所有的行,即使右表(access_log)中沒有匹配。

SQL RIGHT JOIN 關(guān)鍵字

RIGHT JOIN 關(guān)鍵字從右表(table2)返回所有的行,即使左表(table1)中沒有匹配。如果左表中沒有匹配,則結(jié)果為 NULL。

SQL RIGHT JOIN 語法

SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name=table2.column_name;

或:

SELECT column_name(s)
FROM table1
RIGHT OUTER JOIN table2
ON table1.column_name=table2.column_name;

注釋:在某些數(shù)據(jù)庫中,RIGHT JOIN 稱為 RIGHT OUTER JOIN。
在這里插入圖片描述

演示數(shù)據(jù)庫

在本教程中,我們將使用 RUNOOB 樣本數(shù)據(jù)庫。

操作前先在 access_log 表添加一條數(shù)據(jù),該數(shù)據(jù)在 Websites 表沒有對應(yīng)的數(shù)據(jù):

INSERT INTO `access_log` (`aid`, `site_id`, `count`, `date`) VALUES ('10', '6', '111', '2016-03-09');

下面是選自 “Websites” 表的數(shù)據(jù):

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘寶          | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鳥教程      | http://www.runoob.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+

下面是 “access_log” 網(wǎng)站訪問記錄表的數(shù)據(jù):

mysql> SELECT * FROM access_log;
+-----+---------+-------+------------+
| aid | site_id | count | date       |
+-----+---------+-------+------------+
|   1 |       1 |    45 | 2016-05-10 |
|   2 |       3 |   100 | 2016-05-13 |
|   3 |       1 |   230 | 2016-05-14 |
|   4 |       2 |    10 | 2016-05-14 |
|   5 |       5 |   205 | 2016-05-14 |
|   6 |       4 |    13 | 2016-05-15 |
|   7 |       3 |   220 | 2016-05-15 |
|   8 |       5 |   545 | 2016-05-16 |
|   9 |       3 |   201 | 2016-05-17 |
|  10 |       6 |   111 | 2016-03-19 |
+-----+---------+-------+------------+
9 rows in set (0.00 sec)

SQL RIGHT JOIN 實(shí)例

下面的 SQL 語句將返回網(wǎng)站的訪問記錄。

以下實(shí)例中我們把 Websites 作為左表,access_log 作為右表:

SELECT websites.name, access_log.count, access_log.date
FROM websites
RIGHT JOIN access_log
ON access_log.site_id=websites.id
ORDER BY access_log.count DESC;

執(zhí)行以上 SQL 輸出結(jié)果如下:
在這里插入圖片描述
注釋:RIGHT JOIN 關(guān)鍵字從右表(access_log)返回所有的行,即使左表(Websites)中沒有匹配。

SQL FULL OUTER JOIN 關(guān)鍵字

FULL OUTER JOIN 關(guān)鍵字只要左表(table1)和右表(table2)其中一個表中存在匹配,則返回行.

FULL OUTER JOIN 關(guān)鍵字結(jié)合了 LEFT JOIN 和 RIGHT JOIN 的結(jié)果。

SQL FULL OUTER JOIN 語法

SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name=table2.column_name;

在這里插入圖片描述

演示數(shù)據(jù)庫

在本教程中,我們將使用 RUNOOB 樣本數(shù)據(jù)庫。

下面是選自 “Websites” 表的數(shù)據(jù):

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘寶          | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鳥教程      | http://www.runoob.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+

下面是 “access_log” 網(wǎng)站訪問記錄表的數(shù)據(jù):

+-----+---------+-------+------------+
| aid | site_id | count | date       |
+-----+---------+-------+------------+
|   1 |       1 |    45 | 2016-05-10 |
|   2 |       3 |   100 | 2016-05-13 |
|   3 |       1 |   230 | 2016-05-14 |
|   4 |       2 |    10 | 2016-05-14 |
|   5 |       5 |   205 | 2016-05-14 |
|   6 |       4 |    13 | 2016-05-15 |
|   7 |       3 |   220 | 2016-05-15 |
|   8 |       5 |   545 | 2016-05-16 |
|   9 |       3 |   201 | 2016-05-17 |
+-----+---------+-------+------------+
9 rows in set (0.00 sec)

SQL FULL OUTER JOIN 實(shí)例

下面的 SQL 語句選取所有網(wǎng)站訪問記錄。

MySQL中不支持 FULL OUTER JOIN,你可以在 SQL Server 測試以下實(shí)例。

SELECT Websites.name, access_log.count, access_log.date
FROM Websites
FULL OUTER JOIN access_log
ON Websites.id=access_log.site_id
ORDER BY access_log.count DESC;

注釋:FULL OUTER JOIN 關(guān)鍵字返回左表(Websites)和右表(access_log)中所有的行。如果 “Websites” 表中的行在 “access_log” 中沒有匹配或者 “access_log” 表中的行在 “Websites” 表中沒有匹配,也會列出這些行。

http://aloenet.com.cn/news/47445.html

相關(guān)文章:

  • 網(wǎng)站設(shè)置安全哈爾濱seo優(yōu)化
  • 用ih5做微網(wǎng)站博客可以做seo嗎
  • 提升網(wǎng)站收錄網(wǎng)絡(luò)銷售平臺排名
  • 哈爾濱網(wǎng)站開發(fā)制作岳陽seo快速排名
  • 自己建立公司網(wǎng)站 怎樣做怎么做好營銷推廣
  • 使網(wǎng)站有流量萬能搜索引擎
  • 網(wǎng)站開發(fā)輔助工具地推怎么做最有效
  • 企業(yè)網(wǎng)站建設(shè)框架圖2345網(wǎng)址導(dǎo)航瀏覽器下載
  • 二手車網(wǎng)站模版售價美國站外推廣網(wǎng)站
  • 做博客的網(wǎng)站有哪些功能seo知識是什么意思
  • aspnet東莞網(wǎng)站建設(shè)多少錢alexa排名查詢統(tǒng)計
  • 做游戲代練去那個網(wǎng)站石家莊最新疫情
  • 路橋做網(wǎng)站衡陽seo優(yōu)化首選
  • 婚禮禮網(wǎng)站如何做的aso優(yōu)化服務(wù)站
  • 中山市做網(wǎng)站實(shí)力產(chǎn)品軟文是什么意思
  • 從化網(wǎng)站建設(shè)優(yōu)化今天最新新聞10條
  • wordpress 仿虎嗅主題seo百度推廣
  • 免費(fèi)的ftp網(wǎng)站2021百度熱搜年度榜
  • 免費(fèi)域名的網(wǎng)站百度可以發(fā)布廣告嗎
  • 個人備案網(wǎng)站做企業(yè)會怎樣湖南靠譜的關(guān)鍵詞優(yōu)化
  • 不用編程做APP和響應(yīng)式網(wǎng)站重慶seo排名方法
  • 靠譜的網(wǎng)站制作專業(yè)公司seo論壇
  • 易企秀網(wǎng)站開發(fā)杭州關(guān)鍵詞推廣優(yōu)化方案
  • wordpress集成微信收款seo服務(wù)銷售招聘
  • 惠州做網(wǎng)站免費(fèi)網(wǎng)站alexa排名查詢
  • 做網(wǎng)站推廣托管費(fèi)用seo網(wǎng)絡(luò)營銷推廣公司深圳
  • 微信網(wǎng)站制作軟件有哪些uc瀏覽網(wǎng)頁版進(jìn)入
  • 簡潔網(wǎng)站欣賞路由優(yōu)化大師
  • 使用php做的網(wǎng)站有哪些西安自助建站
  • 裝飾公司手機(jī)網(wǎng)站湖南網(wǎng)站seo地址