當前位置:首頁 » 存儲配置 » sql計算並存儲

sql計算並存儲

發布時間: 2024-09-25 21:35:11

A. 如何將sql查詢出來的一列數據賦值,執行存儲過程

CREATE TABLE #Rtb_temp(
rid int not null identity(1,1),
id VARCHAR(50)
)
declare @id VARCHAR(5000),
@CP int=0,
@maxCP int=0,
@sql nvarchar(max)=''
insert into #Rtb_temp select id from tb
select @maxCP=MAX(rid) from #Rtb_temp
DECLARE MS CURSOR FOR
SELECT rid,id FROM #Rtb_temp
OPEN MS
FETCH NEXT FROM MS INTO @CP,@id
WHILE @@fetch_status=0
BEGIN
IF @CP <@maxCP
BEGIN
SELECT @sql=@sql+@id+','
END else
begin
select @sql=@sql+@id
end
FETCH NEXT FROM MS INTo @CP,@id
END
CLOSE MS
DEALLOCATE MS
exec Proceres @id=@sql
這樣寫會好點,可以把所有數據顯示在一張表裡面 。看是否OK、

B. SQL 中存儲過程怎麼使用

一、簡單的儲存過程:

1、創建一個存儲過程

create procere GetUsers()

begin

select * from user;

end;12345

2、調用存儲過程

call GetUsers();12

3、刪除存儲過程

drop procere if exists GetUsers;

二、帶參數的存儲過程

1、MySql 支持 IN (傳遞給存儲過程) , OUT (從存儲過程傳出) 和 INOUT (對存儲過程傳入和傳出) 類型的參數 , 存儲過程的代碼位於 BEGIN 和 END 語句內 , 它們是一系列 SQL 語句 , 用來檢索值 , 然後保存到相應的變數 (通過指定INTO關鍵字) ;

2、下面的存儲過程接受三個參數 , 分別用於獲取用戶表的最小 , 平均 , 最大分數 , 每個參數必須具有指定的類型 , 這里使用十進制值(decimal(8,2)) , 關鍵字 OUT 指出相應的參數用來從存儲過程傳出

create procere GetScores(

out minScore decimal(8,2),

out avgScore decimal(8,2),

out maxScore decimal(8,2)

)

begin

select min(score) into minScore from user;

select avg(score) into avgScore from user;

select max(score) into maxScore from user;

end;1234567891011

3、調用此存儲過程 , 必須指定3個變數名(所有 MySql 變數都必須以@開始) , 如下所示 :

call GetScores(@minScore, @avgScore, @maxScore);12

4、該調用並沒有任何輸出 , 只是把調用的結果賦給了調用時傳入的變數@minScore, @avgScore, @maxScore, 然後即可調用顯示該變數的值 :

select @minScore, @avgScore, @maxScore;

5、使用 IN 參數 , 輸入一個用戶 id , 返回該用戶的名字 :

create procere GetNameByID(

in userID int,

out userName varchar(200)

)

begin

select name from user

where id = userID

into userName;

end;12345678910

6、調用存儲過程 :

call GetNameByID(1, @userName);

select @userName;123

C. 如何用SQL語句將查詢結果存儲到文本文件中

1.打開考生文件夾下的資料庫College,物理刪除該資料庫中的temp表,然後將3個自由表"教師表"、"課程表"和"學院表"添加到該資料庫中。 2.為"課程表"和"教師表"分別建立主索引和普通索引,欄位名和索引名均為"課程號",並為兩個表建立一對多的聯系。 3.使用SQL語句查詢"教師表"中工資大於等於4500的教師的全部信息, 將查詢結果按職工號升序排列, 查詢結果存儲到文本文件one.txt中 ,SQL語句存儲於文件two.prg中。

D. SQL server 創建存儲過程,要求該存儲過程能夠實現對輸入的兩個數相加,並將結果輸出。。

一、創建

create proc p_sum

(@a int,

@b int,

@c int output)

as

set @c=@a+@b

--執行

declare @c int

exec p_sum 11 ,2 ,@c output

print @c

二友猜、create proc p_multiply(@a int=0,@b int=0,@c int output)

as

begin

set @c=@a*@b

end

--調用

--declare @a int,@b int,@c int

--select @a=3,@b=2

--exec p_multiply @a,@b,@c output

--select @c

(4)sql計算並存儲擴展閱讀:

例子:

CREATE PROCEDURE order_tot_amt

@o_id int,

@p_tot int output

AS

SELECT @p_tot = sum(Unitprice*Quantity)

FROM orderdetails

WHERE orderid=@o_id

GO

例子說明:該例子是建立指沒一個簡單的存儲過程order_tot_amt,這個存儲過程根據用戶輸入的訂單ID號碼(@o_id),由訂單明細表 (orderdetails)中計算該訂單銷售總額[單價(Unitprice)*數量(Quantity)],這一金額通過@p_tot這一參數輸出給調用這一存好逗型儲過程的程序。

E. 使用SQL語句創建存儲過程

使用SQL語句創建存儲的具體過程如下:

1、首先,打開企業管理器,選擇【工具】-【查詢分析器】:

熱點內容
白領解壓操 發布:2024-09-26 00:14:42 瀏覽:776
javaweb商城項目源碼 發布:2024-09-25 23:47:35 瀏覽:518
ftp連接控制流量 發布:2024-09-25 23:40:26 瀏覽:284
固態硬碟如何設置緩存 發布:2024-09-25 23:00:00 瀏覽:148
為什麼谷歌設置安卓標桿機 發布:2024-09-25 22:47:44 瀏覽:572
oracle創建資料庫伺服器 發布:2024-09-25 22:34:13 瀏覽:237
汽車銷售系統資料庫設計 發布:2024-09-25 22:28:27 瀏覽:239
密碼為什麼不可以告訴別人 發布:2024-09-25 22:21:01 瀏覽:992
怎麼用伺服器玩游戲 發布:2024-09-25 22:12:41 瀏覽:940
vs編譯器如何遮蔽一段代碼 發布:2024-09-25 21:53:50 瀏覽:412