2012-02-28 51 views
0

试图在SELECT语句内尝试SELECTUPDATE记录。
初步SELECT:SQL在插入期间选择并更新记录

INSERT INTO dbo.ATable(VALUE1, VALUE2) 
SELECT B.VALUE1, dbo.FUNCTION(B.VALUE1) 
FROM dbo.BTable B 

的功能:

SELECT @nextNum = C.VALUE2 
FROM dbo.CTABLE C 
WHERE C.VALUE1= @VALUE1 
RETURN @nextNum 

我所试图做的事:

  1. 插入记录表1。
  2. 从Table2获取数据。
  3. 还从另一个表(CTable)中获取VALUE2的值。

问题:

我需要每一个执行此函数到记录,因此多次调用具有唯一值的时间递增VALUE2

我不能从该函数内部存储proc,我不能在SELECT内部存储proc,并且我不能从FUNCTION内部调用UPDATE

我没有选择? 我需要不同的实现吗?

+0

你想插入一行到表'A'或许多行吗? – 2012-02-28 15:10:24

+0

在表1中插入什么记录?什么表2? – dansasu11 2012-02-28 15:12:15

+0

你正在使用哪个数据库服务器? – Vikram 2012-02-28 15:13:56

回答

0
INSERT INTO dbo.ATable(VALUE1, VALUE2) 
SELECT B.VALUE1, C.VALUE2 
FROM dbo.BTable B 
JOIN dbo.CTable C 
ON B.VALUE1 = C.VALUE1