用于在表上插入FIRST行的SQL查询

时间:2014-09-17 13:25:19

标签: c# mysql sql sql-server

我有一个包含10列的SQL表,其中两列是project和employee。

  • 我想要做的是我有一个值的下拉列表 此表中的员工字段

  • 我需要在同一个表中插入一个INSERT语句 表中存在的所有值,只需更改值即可 插入时的员工字段

  • 我只想插入一条记录,所以我担心如果我 在WHERE项目上执行一个insert语句等于 用户选择,我将插入数千行。

  • 我只想从项目所在的表中插入一行 field等于用户在下拉列表中选择的内容,然后插入 一行复制该项目单行的所有数据, 和

  • 只需将用户字段替换为用户在a中选择的内容即可 下拉。

1 个答案:

答案 0 :(得分:1)

您可以INSERT使用SELECT TOP 1从现有表中获取一行,其中WHERE子句包含所需的Project,如下所示:

DECLARE @EmployeeIdToAdd int = 12345
DECLARE @ProjectId int = 10

INSERT INTO [ProjectEmployees] (Col1, Col2,..., Project, Employee)
SELECT TOP 1 Col1, Col2,..., Project, @EmployeeIdToAdd
FROM ProjectEmployees
WHERE Project = @ProjectId

您只需要相应地设置参数。