我在数据库“TestDB”中有一个表“Table1”。在表中有3列:id,name,description。那么如何检查表1中是否存在记录?
答案 0 :(得分:2)
在sql server中存在或不存在检查记录的最佳方法
IF EXISTS (SELECT 1 FROM dbo.Table1 WHERE ID = @ID )
BEGIN
END
这里我们使用 SELECT 1 ,因为我们不想加载所有列,因此它会在性能中使用。
答案 1 :(得分:1)
使用EXISTS
?没有进一步的解释,这是我能提供的最好的,但是,如果你真的扩展你的问题,你会得到一个更全面的答案:
USE Sandbox;
GO
CREATE TABLE Test (ID int);
SELECT 1 AS HasData
WHERE EXISTS (SELECT 1 FROM test);
GO
INSERT INTO Test
VALUES(NULL); --intentionally NULL to show that even a single row
--with the value NULL will cause EXISTS will return True
SELECT 1 AS HasData
WHERE EXISTS (SELECT 1 FROM test);
GO
DROP TABLE test;
答案 2 :(得分:1)
If exists (select * from table1 where Id = 2)
- 在这里做你的东西。
答案 3 :(得分:1)
您使用名称或ID
中存在检查记录等表格列SQL查询就在这里。
Declare @id int=1
Declare @name='abc'
IF EXISTS ( SELECT id, name, description
FROM Table1
WHERE id= @id or name=@name )
BEGIN
SET @RetVal = -1 --record already exist
RETURN
END