从sql查询返回默认记录

ama*_*eur 8 sql sql-server sql-server-2008

我有一个sql查询,我对SQL服务器数据库运行,例如.

SELECT * FROM MyTable WHERE Id = 2
Run Code Online (Sandbox Code Playgroud)

这可能会返回许多记录,也可能不会返回任何记录.如果它没有返回,我想改变我的sql查询以返回默认记录,这是可能的,如果是这样,怎么样?如果返回记录,则不应返回默认记录.我无法更新数据,因此需要更改sql查询.

Ale*_* K. 3

另一种方式(您将返回一个空的初始行集);

SELECT * FROM MyTable WHERE Id = 2
IF (@@ROWCOUNT = 0)
   SELECT ...
Run Code Online (Sandbox Code Playgroud)