《Mysql入門(mén)在MySQL中同時(shí)查找兩張表中的數(shù)據(jù)的示例》要點(diǎn):
本文介紹了Mysql入門(mén)在MySQL中同時(shí)查找兩張表中的數(shù)據(jù)的示例,希望對(duì)您有用。如果有疑問(wèn),可以聯(lián)系我們。
這個(gè)例子里面我們從兩個(gè)表中取出頭兩行,然后合并到一個(gè)表中.MYSQL實(shí)例
在現(xiàn)實(shí)中我們常常會(huì)遇到這樣的情況,在一個(gè)數(shù)據(jù)庫(kù)中存在兩個(gè)表,假設(shè)表1儲(chǔ)存著公司個(gè)產(chǎn)品本季度銷售信息,表2儲(chǔ)存著公司本季度欠款金額情況.在一個(gè)頁(yè)面中我們想把這兩個(gè)信息顯示出來(lái).通常的做法是在程序中進(jìn)行兩次SQL查詢,返回兩個(gè)結(jié)果集,在分別顯示出來(lái),非常麻煩.MYSQL實(shí)例
下面是實(shí)現(xiàn)這個(gè)功能的代碼:MYSQL實(shí)例
MYSQL實(shí)例
CREATE PROCEDURE test AS SET NOCOUNT ON --指示存儲(chǔ)過(guò)程不返回查詢影響的行數(shù) DECLARE @col1c varchar(20),@col2c varchar(20), @index int SET @index = 1 CREATE TABLE #tmptbl --創(chuàng)建一個(gè)臨時(shí)表,用于儲(chǔ)存我們的結(jié)果 ( colID int IDENTITY(1,1) PRIMARY KEY CLUSTERED, col1 varchar(20), col2 varchar(20) ) DECLARE cur1 CURSOR FOR SELECT TOP 2 customerid FROM orders DECLARE cur2 CURSOR FOR SELECT TOP 2 regiondescription FROM region OPEN cur1 OPEN cur2 FETCH cur2 INTO @col2c FETCH cur1 INTO @col1c WHILE @@FETCH_STATUS = 0 BEGIN INSERT INTO #tmptbl (col1, col2) VALUES (@col1c, @col2c) FETCH NEXT FROM cur1 INTO @col1c FETCH NEXT FROM cur2 INTO @col2c END CLOSE cur1 CLOSE cur2 DEALLOCATE cur1 DEALLOCATE cur2 SELECT * FROM #tmptbl DROP TABLE #tmptbl GO
說(shuō)明:MYSQL實(shí)例
@@FETCH_STATUS,返回被fetch語(yǔ)句執(zhí)行的最后游標(biāo)狀態(tài).MYSQL實(shí)例
返回值:0-FETCH語(yǔ)句執(zhí)行成功MYSQL實(shí)例
1-FETCH語(yǔ)句失敗,或此行不再結(jié)果集中.MYSQL實(shí)例
2-被提取的行不存在.MYSQL實(shí)例
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.snjht.com/jiaocheng/5204.html