PDA

View Full Version : استفاده از شرط و حلقه در پروسیجر



sam166
جمعه 13 خرداد 1390, 12:48 عصر
سلام و خسته نباشید
من میخوام یک SP بنویسم که :
ابتدا یکی یکی نام کاربری رو از جدول User دریافت کنه و بعد بزار داخل یه متغییر به نام @userid و بعد توسط دو تا select دیگه مقادیر دیگه رو بخونه و یک ضرب رو انجام بده
من خودم یه چیزی نوشتم ولی شرطش رو نمیدونم چه کار کنم

ALTER PROCEDURE GetResult

@idgame numeric(18,0)

AS
BEGIN
declare @Price1 numeric(18, 0)
declare @Price2 numeric(18, 0)
declare @userid nvarchar(50)
set @userid=(select UserId from tbl_User)

set @Price1=(SELECT COUNT(IdResult) AS Expr2
FROM dbo.tbl_Result
WHERE (ComparisonFinalResult = 1) AND (UserSet = @userid) AND (IdGame = @idgame))

set @Price2=(SELECT COUNT(IdPlay) AS Expr3
FROM dbo.tbl_Play
WHERE (IdGame = @idgame))

update tbl_Result Set Points=((@Price1*100)/@Price2)

where UserSet = @userid AND IdGame = @idgame

END

شرطش میخوام اینجوری باشه که یکی یکی که نام کاربری ها رو داخل متغییر ذخیره کرد و به عنوان پارامتر دیگر select ها قرار بده و اگه به آخرین نام کاربری رسید و دیگه نام کاربری نبود پروسیجر کار خودش رو تموم کنه

ممنون