如果存在@name则选择 ID,否则将@name插入表中



表如下所示:

CREATE TABLE names
(ID int,
 name varchar(10) unique)

我需要达到以下结果:

if @name not exists in names then insert into names (name) values (@name)
select id from names where name=@name

最好使用用户定义的功能来实现它。

你基本上已经把答案写在了你的问题中:

IF (NOT EXISTS (SELECT * FROM names WHERE name = @name))
    INSERT INTO names (name) values (@name);
SELECT id FROM names WHERE name = @name;

唯一的问题是您尚未将表names设置为使用IDENTITY列。这意味着您还需要为id分配值。

相关内容

  • 没有找到相关文章

最新更新