Declare @ temp table
(
Id int,
Lawname nvarchar (10 ),
LOGNAME varchar (10 ),
Countid int
)
Declare @ ID int;
Declare @ lawname varchar (50 );
Declare @ LOGNAME nvarchar (10 );
Declare mycur cursor
(Select ID, lawname, LOGNAME from lawer) -- declares the cursor
Open mycur -- open the cursor
Fetch next from mycur into @ ID, @ lawname, @ LOGNAME
While @ fetch_status = 0 -- when the sqlcode value is 0, it indicates that everything is normal. 100 indicates that it has reached the end of the result set.
Begin
Declare @ CNT int;
Select @ CNT = count (ID) from lawer where id = @ ID and lawname = @ lawname and LOGNAME = @ LOGNAME
Insert into @ temp (ID, lawname, LOGNAME, countid) values (@ ID, @ lawname, @ LOGNAME, @ CNT)
Fetch next from mycur into @ ID, @ lawname, @ LOGNAME
End
Close mycur -- close the cursor
Deallocate mycur -- delete a cursor Resource
Select * From @ temp
/* -- Locate the record at the specified position
Fetch absolute 56488 from my_cursor into @ ID, @ name, @ address
Select @ ID as ID, @ name as name, @ address as address
-- Locate the relative position record of the current record
Fetch relative-88 from my_cursor into @ ID, @ name, @ address
Select @ ID as ID, @ name as name, @ address as address
-- Locate the previous record
Fetch prior from my_cursor into @ ID, @ name, @ address
Select @ ID as ID, @ name as name, @ address as address
-- Locate the last record
Fetch next from my_cursor into @ ID, @ name, @ address
Select @ ID as ID, @ name as name, @ address as address
-- Locate the first record
Fetch first from my_cursor into @ ID, @ name, @ address
Select @ ID as ID, @ name as name, @ address as address
-- Locate to the end record
Fetch last from my_cursor into @ ID, @ name, @ address
Select @ ID as ID, @ name as name, @ address as address
*/