表如下所示:
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
分配值。