SQL 空语句在 MS Access 中不起作用

SQL Null statement not working MS Access

所以我不太确定这里发生了什么,但在我的数据库中我有一个 table,它有 1000 条记录,其中 36 条 [workername] 为空。我试图 运行 这个 SQL 到 select 要分配的未分配的空 [workername] 记录,但是当我将代码置于查询设计和查看模式时没有填充任何内容。我真的不知道为什么这不起作用。

strSQL = "SELECT IntakeID, 
                 caseid, 
                 [Program], 
                 [language] 
          FROM Intake 
          WHERE workername Is Null"
     Set rs = db.OpenRecordset(strSQL, dbOpenDynaset)

该查询看起来有效,所以我会质疑该列是否实际上为空。

您可以尝试以下方法确定

SELECT 
    IntakeID, 
    caseid, 
    [Program], 
    [language] ,
    ISNULL(workername)
FROM Intake 
  ORDER BY ISNULL(workername) ASC

试试这个代码。首先,它会使用 Nz 将空值替换为 '',如果不为空,它将 trim 值以确保没有 space 并检查它是否等于 '' 意味着空..希望它会帮助

"SELECT IntakeID, 
caseid, 
[Program], 
[language] 
FROM
Intake WHERE  LTRIM(RTRIM(Nz(workername, ''))) = ''"