查询:查找具有空条目的最早日期,它仍然适用于没有空条目的日期
Query: Find the earliest date with a null entry which still works with no null entries
我正在构建一个为用户显示下一个截止日期的查询。日期数保持不变,但截止日期会发生变化,具体取决于有多少条记录有用户的评论。
SELECT tbl_Description.Sample,
tbl_Description.User,
Min(tbl_Data.TestDate) As DueDate
FROM tbl_Description
INNER
JOIN tbl_Data
ON tbl_Description.DescriptionID = tbl_Data.DateID
WHERE tbl_Data.Comment IS NULL
GROUP
BY tbl_Description.Sample,
tbl_Description.User;
但是,当tbl_Data
的每条记录都有评论时,查询returns条空记录。这可能会发生,因为 WHERE
和 IS NULL
语句 returns 如果每条记录都存在则什么都没有。最好,我仍然希望空记录与 [DueDate]
字段中的内容一起出现,例如空白或“完整”评论。
tbl_Description
Sample User
1 Betty
tbl_Data (v1)
Date Comments
05/01/2018 Orange
05/08/2018 Orange-Brown
05/15/2018
05/22/2018
查询输出
Sample User DueDate
1 Betty 05/15/2018
tbl_Data (v2)
Date Comments
05/01/2018 Orange
05/08/2018 Orange-Brown
05/15/2018 Brown
05/22/2018 Brown-Black
查询输出(查询 returns 目前没有)
Sample User DueDate
1 Betty Complete
如有任何帮助,我们将不胜感激!
现在知道我们也可以按 DescriptionID
分组,我建议从 tbl_Data
中查询最小 TestDate
的记录,而不是 Comment
单独和(外部)将结果加入 table tbl_Description
。这样,每个 Description 都包含在结果中,并且当 Description 的所有 Dates 都有一个Comment
,DueDate
会出现空白:
SELECT tbl_Description.Sample, tbl_Description.User, Uncommented.DueDate
FROM tbl_Description
LEFT JOIN (
SELECT tbl_Data.DateID, Min(tbl_Data.TestDate) AS DueDate
FROM tbl_Data
WHERE (((tbl_Data.Comment) Is Null))
GROUP BY tbl_Data.DateID
) AS Uncommented ON tbl_Description.DescriptionID = Uncommented.DateID;
我正在构建一个为用户显示下一个截止日期的查询。日期数保持不变,但截止日期会发生变化,具体取决于有多少条记录有用户的评论。
SELECT tbl_Description.Sample,
tbl_Description.User,
Min(tbl_Data.TestDate) As DueDate
FROM tbl_Description
INNER
JOIN tbl_Data
ON tbl_Description.DescriptionID = tbl_Data.DateID
WHERE tbl_Data.Comment IS NULL
GROUP
BY tbl_Description.Sample,
tbl_Description.User;
但是,当tbl_Data
的每条记录都有评论时,查询returns条空记录。这可能会发生,因为 WHERE
和 IS NULL
语句 returns 如果每条记录都存在则什么都没有。最好,我仍然希望空记录与 [DueDate]
字段中的内容一起出现,例如空白或“完整”评论。
tbl_Description
Sample User
1 Betty
tbl_Data (v1)
Date Comments
05/01/2018 Orange
05/08/2018 Orange-Brown
05/15/2018
05/22/2018
查询输出
Sample User DueDate
1 Betty 05/15/2018
tbl_Data (v2)
Date Comments
05/01/2018 Orange
05/08/2018 Orange-Brown
05/15/2018 Brown
05/22/2018 Brown-Black
查询输出(查询 returns 目前没有)
Sample User DueDate
1 Betty Complete
如有任何帮助,我们将不胜感激!
现在知道我们也可以按 DescriptionID
分组,我建议从 tbl_Data
中查询最小 TestDate
的记录,而不是 Comment
单独和(外部)将结果加入 table tbl_Description
。这样,每个 Description 都包含在结果中,并且当 Description 的所有 Dates 都有一个Comment
,DueDate
会出现空白:
SELECT tbl_Description.Sample, tbl_Description.User, Uncommented.DueDate
FROM tbl_Description
LEFT JOIN (
SELECT tbl_Data.DateID, Min(tbl_Data.TestDate) AS DueDate
FROM tbl_Data
WHERE (((tbl_Data.Comment) Is Null))
GROUP BY tbl_Data.DateID
) AS Uncommented ON tbl_Description.DescriptionID = Uncommented.DateID;