在MySQL中同時(shí)查找兩張表中的數(shù)據(jù)的示例
這個(gè)例子里面我們從兩個(gè)表中取出頭兩行,然后合并到一個(gè)表中。
在現(xiàn)實(shí)中我們常常會(huì)遇到這樣的情況,在一個(gè)數(shù)據(jù)庫(kù)中存在兩個(gè)表,假設(shè)表1儲(chǔ)存著公司個(gè)產(chǎn)品本季度銷(xiāo)售信息,表2儲(chǔ)存著公司本季度欠款金額情況。在一個(gè)頁(yè)面中我們想把這兩個(gè)信息顯示出來(lái)。通常的做法是在程序中進(jìn)行兩次SQL查詢,返回兩個(gè)結(jié)果集,在分別顯示出來(lái),非常麻煩。
下面是實(shí)現(xiàn)這個(gè)功能的代碼:
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ō)明:
@@FETCH_STATUS,返回被fetch語(yǔ)句執(zhí)行的最后游標(biāo)狀態(tài)。
返回值:0-FETCH語(yǔ)句執(zhí)行成功
1-FETCH語(yǔ)句失敗,或此行不再結(jié)果集中。
2-被提取的行不存在。
相關(guān)文章
MySQL文本文件導(dǎo)入及批處理模式應(yīng)用說(shuō)明
MySQL文本文件導(dǎo)入及批處理模式應(yīng)用說(shuō)明,需要的朋友可以參考下。2011-09-09php后臺(tái)經(jīng)常提示無(wú)法連接mysql 刷新后又可以訪問(wèn)的解決方法
這幾天有一臺(tái)MySQL數(shù)據(jù)庫(kù)服務(wù)器出現(xiàn)了頻繁的掉線情況,通過(guò)排查,并沒(méi)有排查出哪個(gè)網(wǎng)站被攻擊,百思不得其解中的時(shí)候,群里有個(gè)朋友說(shuō)是因?yàn)槲④汯B967723造成的,網(wǎng)上搜索了一下,果然很多人都是這樣的問(wèn)題,都是windows系統(tǒng)下安裝的MySQL造成的2011-05-05Mysql的longblob字段插入數(shù)據(jù)問(wèn)題解決
在使用mysql的過(guò)程中,有個(gè)問(wèn)題就是mysql的優(yōu)化,mysql中l(wèi)ongblob字段在5.5版本中默認(rèn)的為1M,需要解決問(wèn)題的朋友可以參考下2014-01-01mysql使用left?join連接出現(xiàn)重復(fù)問(wèn)題的記錄
這篇文章主要介紹了mysql使用left?join連接出現(xiàn)重復(fù)問(wèn)題的記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03Mysql 直接查詢存儲(chǔ)的Json字符串中的數(shù)據(jù)
本文主要介紹了Mysql直接查詢存儲(chǔ)的Json字符串中的數(shù)據(jù),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02mysql建表報(bào)錯(cuò):invalid?default?value?for?'date'的解決方
最近遇到一個(gè)這樣的問(wèn)題,出現(xiàn)了invalid default value for 'end_date'錯(cuò)誤,所以下面這篇文章主要給大家介紹了關(guān)于mysql建表報(bào)錯(cuò):invalid?default?value?for?'date'的解決方法,需要的朋友可以參考下2022-12-12