-1

我正在尝试使用来自 select 语句的值之一进行插入语句。

INSERT INTO Politi.Sager_Kontonumre VALUES (@sagsID, <Result from Select>);

选择语句:

SELECT k.id FROM Bank.Kontonumre k WHERE k.registreringsnummer = @registreringsnummer AND k.kontonummer = @kontonummer;

有什么建议么?

提前致谢。

4

4 回答 4

2

只需使用 SELECT 进行 INSERT

INSERT INTO Politi.Sager_Kontonumre
  SELECT @sagsID, k.id
  FROM Bank.Kontonumre k
  WHERE k.registreringsnummer = @registreringsnummer AND k.kontonummer = @kontonummer;
于 2018-08-29T06:52:58.800 回答
2

这应该有效:

INSERT INTO Politi.Sager_Kontonumre
    SELECT @sagsID, k.id 
     FROM Bank.Kontonumre k
     WHERE k.registreringsnummer = @registreringsnummer 
       AND k.kontonummer = @Kontonummer;
于 2018-08-29T06:53:27.080 回答
1

您还应该查看以下查询。当您拥有多个选择语句时,它会有所帮助。

INSERT INTO Politi.Sager_Kontonumre
SELECT @sagsID, (SELECT k.id FROM Bank.Kontonumre k WHERE k.registreringsnummer = @registreringsnummer AND k.kontonummer = @kontonummer)
于 2018-08-29T07:02:20.190 回答
0

您可以将您SELECT希望插入的值放入稍后在您的状态中使用的 sql 变量中INSERT

例子:

SET @sensibleVariableName = (SELECT
                               k.id
                             FROM
                               Bank.Kontonumre k
                             WHERE
                               k.registreringsnummer = @registreringsnummer
                             AND
                               k.kontonummer = @kontonummer);

INSERT INTO Politi.Sager_Kontonumre VALUES (@sagsID, @sensibleVariableName);
于 2018-08-29T07:13:59.053 回答