inserting the max colum in the stored proc

  • Thread starter Thread starter iHavAQuestion
  • Start date Start date
I

iHavAQuestion

I have stored procedure
Create Stored Procedure Name
(
@Var1
@Var2
@Var3
)
Inseret into table1
(
Col1
col2
col3
)
Values
(
@Var1
@Var2
@Var3
)

But in col1 i need to insert select max(col) from tablename, which is in the
same database.

how do I do that??
 
you can use something like in (MS SQL)

INSERT INTO table1(Col1, Col2,Col3)
SELECT MAX(col1), col2, col3 GROUP BY col2, col3




George
 
Inseret into table1 (
col1
col2
col3
)
Values (
(select max(col1) from table1
@Var2
@Var3
)

of course if two inserts happen at the same time, they will get the same
result. you can set the isolation level to serializable (at a big performance
cost), or if col1 has a unique index, catch the duplicate key error and
resubmit on the failed insert (a better option)

a better option is to use the identity constaint, at let sqlserver assign
the max.

-- bruce (sqlwork.com)
 
Thats fine...
But, I actually wanted to add the MAX(col) from tabe that exists from the
same data base in place of @var1/Col1 in the below stored procedure

Hope you got my question

Create Stored Procedure Name
(
@Var1
@Var2
@Var3
)
Inseret into table1
(
Col1
col2
col3
)
Values
(
@Var1
@Var2
@Var3
)
 
Thats fine...
But, I actually wanted to add the MAX(col) from tabe that exists from the
same data base in place of @var1/Col1 in the below stored procedure

Hope you got my question

Create Stored Procedure Name
(
@Var1
@Var2
@Var3
)
Inseret into table1
(
Col1
col2
col3
)
Values
(
@Var1
@Var2
@Var3
)
 
Sorry, completely not clear....
Can you rephrase or may be write what you want in pseudo SQL....

PS: I meant to say
INSERT INTO table1(Col1, Col2,Col3)
SELECT MAX(col1), col2, col3 FROM table1 GROUP BY col2, col3


George.
 
Back
Top