c# - SQL Simulating a foreach -


i have insert 7 rows table each row found in table, doing c# application, dreadfully slow relatively small database.

i want move 1 query, , best method foreach loop, sql doesnt have though while loop have do.

however cant insert part cannot loop through rows, here sql far

declare @cnt int = 0;  select resno res tsgrno = 1;  print 'row cnt'; print @@rowcount; -- prints 0 though 6 rows returned  while @cnt < @@rowcount begin      print @cnt;      --in here need      -- insert tbl (_,tbl.resno,_, _, _)         -- values (_,row.resno,_,_,_)      set @cnt = @cnt + 1; end 

does know better , working way this?

edit:

this @ now

declare @_r1 int = 7, @_date int = 20150608  select  *    res r   not exists         (         select  *             vis_resr rr           rr.resno = r.resno         , rr.date = @_date         ) , r.tsgrno = 1 , r.r1 = @_r1  insert vis_resr (r1, resno, vis_resr.date, frtm, totm) values (@_r1,r.resno,@_date,0,0) 

@_r1 , @_date set before sending query, don't understand how make insert using r.resno values

why cannot use select statement in insert into?

insert tbl (tbl.resno) select resno res tsgrno = 1 

if select statement return 6 rows, 6 rows inserted

adding rows using insert , select

update after comment:
inserting values if not exist
based on version of sql server can use merge

declare @_r1 int = 7  declare @_date int = 20150608  merge vis_resr target using (select resno         res         tsgrno = 1 , r1 = @_r1) source  on target.resno = source.resno when not matched     insert (r1, resno, vis_resr.date, frtm, totm)      values (@_r1, source.resno, @_date, 0, 0); 

merge (transact-sql)

or if sql server version older 2008 try next

declare @_r1 int = 7 declare @_date int = 20150608  insert vis_resr (r1, resno, vis_resr.date, frtm, totm)  select @_r1, r.resno, @_date, 0, 0 res r  not exists (select *                    vis_resr rr                    rr.resno = r.resno                    , rr.date = @_date )  , r.tsgrno = 1  , r.r1 = @_r1  

Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -