国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 學院 > 開發設計 > 正文

在ADO使用SELECT語法五

2019-11-18 22:28:03
字體:
來源:轉載
供稿:網友
Join

JOIN連接組合兩個表中的字段記錄,包括三種:



INNER JOIN運算式:連接組合兩個表中的字段記錄。

LEFT JOIN運算式:連接組合兩個表中的字段記錄,并將包含了LEFT JOIN左邊表中的全部記錄。

RIGHT JOIN運算式:連接組合兩個表中的字段記錄,并將包含了RIGHT JOIN右邊表中的全部記錄。


INNER JOIN設定兩個表相關連的運算式,以連接組合兩個表中的字段記錄。

INNER JOIN語法如下:

FROM 表1 INNER JOIN 表2 ON 表1.字段1 比較運算子 表2.字段2

    兩個表連接的字段,譬如 [表1.字段1=表2.字段2],必須具有相同的字段類型,但是字段名稱不需要相同。

    例如,自動編號字段類型可以連接Long 的字段類型,但是單精整數字段類型不能連接雙精整數的字段類型。

比較運算子可為=、<、>、<=、>=、或<>。

JOIN連接的字段,不可以包含MEMO字段類型或OLE對象類型,否則會發生錯誤。

在一個JOIN表達式中,可以連結多個ON子句:

SELECT fields
FROM 表1 INNER JOIN 表2
ON 表1.字段1 比較運算子 表2.字段1 AND
ON 表1.字段2 比較運算子 表2.字段2) OR
ON 表1.字段3 比較運算子 表2.字段3)

JOIN表達式中,可以為巢狀式:

SELECT fields
FROM 表1 INNER JOIN
(表2 INNER JOIN [( ]表3
[INNER JOIN [( ] 表x [INNER JOIN ...)]
ON 表3.字段3 比較運算子 表x.字段x)]
ON 表2.字段2 比較運算子 表3.字段3)
ON 表1.字段1 比較運算子 表2.字段2

    在一個INNER JOIN中,可以包括巢狀式的LEFT JOIN或RIGHT JOIN,但是在一個LEFT JOIN或RIGHT JOIN中不能包括巢狀式的INNER JOIN。

讓我們看一個于asp程式當中使用這個SQL指令的例子。

    可以利用Inner Join...On組合兩個表中的記錄,譬如ASP程式rs26.asp如下,[Select 銷售.代號, 產品.名稱, 產品.價格, 銷售.數量 from 銷售 Inner Join 產品 On 產品.代號 = 銷售.代號],使用Inner Join...On設定兩個表相關連的運算式,組合兩個表中的記錄:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Set rs3 = Server.CreateObject("ADODB.Recordset")

sql = "Select 銷售.代號, 產品.名稱, 產品.價格, 銷售.數量 from 銷售 Inner Join 產品 On 產品.代號 = 銷售.代號"

rs3.Open sql,conn1,1,1,1

%>

<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>

<TR>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">代號</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">名稱</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">價格</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">數量</FONT></TD>

</TR>

<% Do while not rs3.EOF %>

<TR>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(0)%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(1)%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(2)%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(3)%></TD>

</TR>

<%

rs3.MoveNext

Loop

rs3.Close

%>

</TABLE>

    以上的 ASP程式rs26.asp,在用戶端使用瀏覽器,瀏覽執行的結果,顯示組合兩個表中的記錄,由于銷售表中并沒有名稱字段和價格字段,通過 [Inner Join 產品 On 產品.代號 = 銷售.代號] 找到產品表的名稱字段和價格字段之資料。

上例使用Inner Join的語法:

Select 銷售.代號, 產品.名稱, 產品.價格, 銷售.數量 from 銷售 Inner Join 產品 On 產品.代號 = 銷售.代號

結果與以下使用Where相同:

Select 銷售.代號, 產品.名稱, 產品.價格, 銷售.數量 from 銷售, 產品 Where 產品.代號 = 銷售.代號

LEFT JOIN/RIGHT JOIN

INNER JOIN連接組合兩個表中相關連的字段記錄,為內部連接,您還可以使用:

    使用LEFT JOIN運算:來建立一個左邊外部連接。LEFT JOIN除了取得兩個表中相關連的字段記錄,并將包含了LEFT JOIN左邊表中的全部記錄,不管在右邊表中是否有相符的記錄。
    使用RIGHT JOIN運算:建立一個右邊外部連接。RIGHT JOIN除了取得兩個表中相關連的字段記錄,并將包含了RIGHT JOIN右邊表中的全部記錄,不管在左邊表中是否有相符的記錄。
    例如,[銷售LEFT JOIN 產品] 可以選取所有的銷售記錄。[銷售RIGHT JOIN 產品] 可以選取所有的產品記錄。

    譬如利用Left Join...On除了取得兩個表中相關連的字段記錄,并包含了LEFT JOIN左邊表中的全部記錄, ASP程式rs26.asp如下,[Select 銷售.代號, 產品.名稱, 產品.價格, 銷售.數量 from 銷售 Left Join 產品 On 產品.代號 = 銷售.代號],使用Left Join包含了LEFT JOIN左邊銷售表中的全部記錄:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

'conn1.Open "driver={SQL Server};server=(Local);uid=sa;pwd=;database=NtopSamp"

Set rs3 = Server.CreateObject("ADODB.Recordset")

sql = "Select 銷售.代號, 產品.名稱, 產品.價格, 銷售.數量 from 銷售 Left Join 產品 On 產品.代號 = 銷售.代號"

rs3.Open sql,conn1,1,1,1

%>

<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>

<TR>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">代號</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">名稱</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">價格</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">數量</FONT></TD>

</TR>

<% Do while not rs3.EOF %>

<TR>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(0)%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(1)%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(2)%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(3)%></TD>

<%

rs3.MoveNext

Loop

rs3.Close

%>

</TABLE>

    以上的ASP程式rs26.asp,在用戶端使用瀏覽器,瀏覽執行的結果,顯示包含了LEFT JOIN左邊銷售表中的全部記錄,由于銷售表中并沒有名稱字段和價格字段,代號4的銷售記錄,通過 [銷售 Left Join 產品 On 產品.代號 = 銷售.代號] 找到產品表的名稱字段和價格字段之資料,其他的代號并沒有找到名稱字段和價格字段之資料。

    利用 Right Join...On除了取得兩個表中相關連的字段記錄,并包含了RIGHT JOIN右邊表中的全部記錄,譬如ASP程式rs26.asp如下,[Select 銷售.代號, 產品.名稱, 產品.價格, 銷售.數量 from 銷售 Right Join 產品 On 產品.代號 = 銷售.代號],使用Right Join包含了RIGHT JOIN右邊產品表中的全部記錄:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Set rs3 = Server.CreateObject("ADODB.Recordset")

sql = "Select 銷售.代號, 產品.名稱, 產品.價格, 銷售.數量 from 銷售 Right Join 產品 On 產品.代號 = 銷售.代號"

rs3.Open sql,conn1,1,1,1

%>

<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>

<TR>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">代號</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">名稱</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">價格</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">數量</FONT></TD>

</TR>

<% Do while not rs3.EOF %>

<TR>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(0)%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(1)%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(2)%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(3)%></TD>

<%

rs3.MoveNext

Loop

rs3.Close

%>

</TABLE>

    以上的 ASP程式rs26.asp,在用戶端使用瀏覽器,瀏覽執行的結果,顯示包含了RIGHT JOIN右邊產品表中的全部記錄,由于產品表中并沒有數量字段,代號4的產品記錄,通過 [銷售 Right Join 產品 On 產品.代號 = 銷售.代號] 找到銷售表的數量字段之資料,其他的代號并沒有找到數量字段之資料。

搞清楚了嗎?  


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
国产香蕉视频在线看| 国产理论电影在线| 在线视频二区| av小说在线| av网站在线播放| 免费在线高清av| 国产特级毛片| 亚洲精品男人| 国产精品一区牛牛影视| 中文字幕在线观看av| 91三级在线| 久草一本av| 中文av资源在线| 黄色av网站在线免费观看| 最新中文字幕在线| 国产羞羞视频| 欧美日韩一区二区三区视视频| 国产写真视频在线观看| 国产精品jvid在线观看| www.操操| 国产黄a三级三级三级av在线看| 国产视频资源| 一级黄色av| av中文在线| 精品全国在线一区二区| 亚洲图区综合| 国产区卡一卡二卡三乱码免费| 一区二区三区四区在线免费视频| 狠狠操狠狠色| 亚洲videos| 69av二区| 男人操女人免费网站| 国产视频1区| 国产免费a∨片在线观看不卡| 伊人网站在线| 91xx在线观看| 91在线看片| 国产夫妻视频| 97国产在线| 国产精品666| 国产经典av| 国产视频中文字幕在线观看| 国产麻豆精品视频一区二区| 蜜桃视频网站在线| 老鸭窝av在线| 国产女呦网站| 国产无套粉嫩白浆在线2022年| 美女永久在线网站| 久色视频在线观看| 快射av在线播放一区| 欧美96在线| 成人午夜无人区一区二区| 国产免费a∨片在线观看不卡| 国产男女无套在线播放| 久久五月精品| 午夜国产在线| 2020国产在线视频| 日本亚洲欧美| 国产午夜三区视频在线| 精品国内一区二区三区免费视频| baoyu777.永久免费视频| 免费在线播放av| 国产亚洲精品拍拍拍拍拍 | 免费在线播放av| 黄色一级视频网站| 国产精品久久久久永久免费看| 精品999视频| 国产在线精品一区二区不卡| 国产理论在线观看| 在线视频三级| 成在在线免费视频| 在线国产一级| 国产丝袜在线| xxxx视频在线| 国产成人综合美国十次| 免费av在线| 四虎成人欧美精品在永久在线| 中文字幕高清av| www.xxx黄| 精品视频三区| 国产三级做爰在线观看| 欧美日韩亚洲第一页| 91精品专区| 福利资源在线久| av在线你懂的| av网站在线播放| 精品一区二区三区在线成人| 五月婷婷视频在线观看| 久久99国产视频| а√资源新版在线天堂| 永久免费在线观看| 2020中文字幕在线播放| 中文字幕第一页av| 国产美女高潮一区二区三区| 在线观看电影av| av网址在线播放| av中文资源在线| 伊人国产在线看一| 国产黄色网页| 国产精品福利视频一区二区三区| 麻豆网站在线免费观看| 免费精品国产自产拍在| 超碰免费在线播放| 九色视频网站| 国产一级片网站| 国产精品入口免费麻豆| 国产精品国产国产aⅴ| 国产区视频在线播放| 国产精品你懂的在线观看| 国产经典三级在线| 亚洲成人在线播放| 免费99热在线观看| 91超碰国产在线| 国产一区二区三区美女秒播| 国产小视频在线高清播放| 国产黄色免费| sm国产在线调教视频| 国产免费黄色| 中文乱码字幕av网站| 日本在线免费中文字幕| 国产精品一区在线看| 国产精品美女一区二区视频| 在线观看av资源网| 天堂在线看视频| 亚洲精品少妇久久久久久| 国产在线更新| av网站大全在线观看| 黄色av电影在线播放| 日本最新在线视频| eeuss影院在线观看| 国产女人在线视频| av中文在线资源| 国产三级在线播放| 牛牛在线精品视频| 69久久久久| 国产午夜三区视频在线| jizz国产| 97一区二区三区| 中文字幕在线观看日本| 日本调教视频在线观看| 国产精品视频一区二区三区麻豆 | www.色婷婷| 国产色在线 com| 麻豆国产在线视频| 在线看黄网址| 国产二区视频在线观看| 久久五月精品| 四虎国产精品永久地址998| 国产视频你懂的| 高清av中文在线字幕观看1| 亚洲字幕成人中文在线观看| 国产精品麻豆一区二区三区| 国产乱码在线| 国产专区在线播放| 亚洲www色| 亚洲精品自产拍在线观看| 91蜜桃在线视频| 国产精品欧美韩国日本久久| 在线91av| 国产高清免费视频| 国产激情网址| 69精品视频| 亚洲网站视频在线观看| 亚洲久草视频| 黄色在线视频观看网站| 久久精品国产亚洲a∨麻豆| 久草国产视频| 天天操天天操天天色天天要| 最新中文字幕av专区| 天天爱天天做色综合| 中文字幕在线播放网址| 中文字幕第一页在线| 国产黄色片在线播放| 在线三级av| 免费在线播放av| 最新国产在线| 在线免费观看高清视频色| www.国产精| 国产亚洲精品一区二区在线观看| 国产私人影院| 在线āv视频| 国产美女被遭强高潮免费网站| 国产一区二区在线|播放| 992tv在线观看在线播放| 在线视频二区| 久精品在线观看| 国产福利电影在线观看| 日p在线观看| 国产黄色高清在线| 日本免费黄色| 国产精品国产国产aⅴ| jlzzjlzz欧美| 国产激情视频一区二区| 免费男女羞羞的视频网站中文字幕| 尤物网在线观看| 日本h片在线观看| 2021天堂中文幕一二区在线观| 超碰在线中文| 亚洲成人国产综合| 国产三级免费观看|