我在尝试更改为 SQL 视图的 MS Access 中有一个查询
选择语句部分之一是
IIf(IsNull([Book ID]),-1,[Book ID]) AS SubBookID
与 Access T-SQL 不同,该IsNull函数需要 2 个参数。
我需要做的是
IIf(IsNull([Book ID],true),-1,[Book ID]) AS SubBookID
但是我们不能那样使用true,因为 T-SQL 认为它是列名
你要检查是否[Book ID]为空。如果它是 null 那么你将返回,-1否则你将返回[Book ID].
要实现这一点,您需要将其改正为:
ISNULL([Book ID],-1) AS SubBookID
如您所见,在这种情况下您不再需要该IIF功能。
阅读有关ISNULLT-SQL 的更多信息:https ://docs.microsoft.com/en-us/sql/t-sql/functions/isnull-transact-sql?view=sql-server-2017