两个表连接时如何检查字段是不是为空
Posted
技术标签:
【中文标题】两个表连接时如何检查字段是不是为空【英文标题】:How to check if Field is null when two tables joins两个表连接时如何检查字段是否为空 【发布时间】:2020-11-07 07:18:41 【问题描述】:我在 Ms-Access 中有两个表。我想检查RollNo
是否为null
给出-1,否则给出RollNo
。我在 C# 应用程序中使用内部联接查询表。
这是查询:
select isnull(s.RollNo, -1) as Roll, c.Class from students s inner join Classes c on s.ClassID = c.ClassID
当我运行这个查询时,它在Roll
中给出了空值。
【问题讨论】:
RollNonull
还是空的?它是什么类型 - 数字、字符?
清空。类型是数字
【参考方案1】:
语法是这样的,使用 Nz:
select Nz(s.RollNo, -1) as Roll, ...
否则,如果在 Access 之外:
select iif(s.RollNo is null, -1, s.RollNo) as Roll, ...
【讨论】:
这项工作在 Ms-Access 中。但我必须在 C# 应用程序中使用这个查询。外部 Ms-Accessnz
不起作用。
@MuhammadRizwan 。 . .您的问题被标记为 MS Access,因此这回答了您提出的问题。如果你有一个 C# 问题,那么作为一个新问题并适当地标记它。
我已经尝试了编辑后的答案。但它仍然提供Roll
的空单元格。
也许您有空字符串,而不是 Null,请参阅编辑后的答案。仔细检查您的数据 - 我们无法为您做到这一点。
那么你有一个值或空值。检查select s.RollNo as Roll, ...
以上是关于两个表连接时如何检查字段是不是为空的主要内容,如果未能解决你的问题,请参考以下文章