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

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


咨詢
建站咨詢
