通过查询添加表面记录
问题描述:
我需要能够即时创建占位符记录。因此,举例来说,如果我有myTable的其中有通过查询添加表面记录
-Apple 1
-Apple 2
-Apple 3
-Pear 1
-Pear 2
我需要一个查询才能够吐了出来。
-Apple 1
-Apple 2
-Apple 3
-Apple 0
-Pear 1
-Pear 2
-Pear 0
我不希望将实际的空白记录追加到数据中,只是让它出现在查询输出中。这可能吗?
答
考虑一个UNION
查询,增加了一个GROUP BY
查询使用标为0的记录来源以下假设表有水果和瓦尔列。但是,UNION
将命令您的Val列为0,1,2,3 ...和UNION ALL
将使行在无两个零的情况下排在最下面的两行。
SELECT t.Fruit, t.Val
FROM Fruits t
UNION
SELECT t.Fruit, 0
FROM Fruits t
GROUP BY t.Fruit
为了将各组诸如用于苹果的最高值下方的行1,2,3, - > [4] < - 使用Max(...) + 1
骨料:
SELECT t.Fruit, t.Val
FROM Fruits t
UNION
SELECT t.Fruit, Max(Val) + 1
FROM Fruits t
GROUP BY t.Fruit
你需要能够编辑记录吗? “查询输出”将如何使用/呈现?这很重要,因为没有简单的内置功能可以动态地向标准查询输出添加记录。它很可能需要“技巧”和/或解决方法,坦白地说,可能比创建临时表和插入记录更有效。 –
[添加其他行]的相关问题(https://*.com/questions/42076780/add-a-blank-row-to-this-access-query),但它是禁止许多行,并不支持动态行数或数据值。 –
您可能能够将记录添加到断开连接的ADO记录集中,先从表中填充记录。 [这是一个相关的问题](https://*.com/questions/5641760/ms-access-form-bound-to-ado-disconnected-recordset)与相关的代码,事件虽然确切的原因是不同的。 –