新聞中心
SQL Server提供了一種稱為“虛擬表”的非常有用的機(jī)制。虛擬表可以幫助你組織來(lái)自不同來(lái)源的數(shù)據(jù),而無(wú)需任何物理表。它們通常使用臨時(shí)表或變量來(lái)存儲(chǔ)臨時(shí)的數(shù)據(jù)集或者SQL的嵌套查詢,有時(shí)也稱為CTE(Common Table Expressions)。

成都創(chuàng)新互聯(lián)公司成立與2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元?jiǎng)P里做網(wǎng)站,已為上家服務(wù),為凱里各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792
在T-SQL(SQL Server的查詢語(yǔ)言)中,實(shí)現(xiàn)虛擬表的兩種基本技術(shù)是變量表和臨時(shí)表。
第一種技術(shù)是基于變量的虛擬表,也稱為變量游標(biāo)。變量表可以使用DECLARE語(yǔ)句來(lái)定義,其中變量保存由SELECT語(yǔ)句返回的結(jié)果集。例如,以下代碼使用變量 @book_list,它是一個(gè)“虛擬表”,用于返回圖書名稱和價(jià)格:
“`sql
DECLARE @book_list TABLE (
book_name NVARCHAR (255),
book_price INT
);
INSERT INTO @book_list (book_name, book_price)
SELECT b.book_name, b.price
FROM book b;
SELECT * FROM @book_list;
另一種技術(shù)是使用臨時(shí)表。臨時(shí)表可以使用CREATE TABLE語(yǔ)句在SQL Server中定義,并且在會(huì)話結(jié)束后自動(dòng)刪除??梢允褂萌魏斡行У腡-SQL語(yǔ)句來(lái)操縱臨時(shí)表中的數(shù)據(jù),例如,以下代碼使用循環(huán)把數(shù)據(jù)插入到臨時(shí)表中:
```sql
DECLARE @index INT;
CREATE TABLE #book_list (
book_name NVARCHAR (255),
book_price INT
);
SET @index = 0;
WHILE ( @index
BEGIN
INSERT INTO #book_list (book_name, book_price)
SELECT b.book_name, b.price
FROM book b
WHERE b.index = @index;
SET @index = @index + 1;
END;
SELECT * FROM #book_list;
虛擬表在SQL Server中具有重要意義,可以用它們來(lái)維護(hù)特定任務(wù)的結(jié)果集、存儲(chǔ)循環(huán)內(nèi)部數(shù)據(jù)或者在多個(gè)查詢中重復(fù)使用某種結(jié)果集。虛擬表是實(shí)現(xiàn)更復(fù)雜數(shù)據(jù)查詢的可行方法。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開(kāi)通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
當(dāng)前名稱:基于SQLServer的虛擬表實(shí)現(xiàn)(sqlserver的偽表)
網(wǎng)址分享:http://www.dlmjj.cn/article/dpgcjos.html


咨詢
建站咨詢
