用于计算表中行数的 SQL 查询
Posted
技术标签:
【中文标题】用于计算表中行数的 SQL 查询【英文标题】:SQL query to count rows in a table 【发布时间】:2013-09-28 05:03:38 【问题描述】:我在 ms access 2003 中有一个表 (MYTABLE),其中包含以下列:表名、列名和计数 我想通读该表并为每个表和列动态创建 SQL 语句,运行 SQL 以获取计数并更新表中的“计数”列。
例如
我的桌子有
Tablename columnname count
PATIENT. AGE. 0
从年龄不为空的患者中生成 SQL select Count(*)
使用计数值更新我表中的“计数”列
【问题讨论】:
【参考方案1】:您可以在UPDATE
查询中使用DCount Function。
UPDATE MYTABLE
SET [count] =
DCount('*', [Tablename], '[' & columnname & '] Is Not Null');
UPDATE
语句检查MYTABLE
中的每一行,为DCount()
提供存储在Tablename
和columnname
字段中的值,并将从DCount
返回的数字存储在名为count
的字段中在同一行。
【讨论】:
我遇到了一个错误。如何遍历 MYTABLE 并将表和列的值传递给 DCount? 我修改了答案以解释UPDATE
语句如何遍历MYTABLE
中包含的行。您收到的错误信息是什么?【参考方案2】:
Update tablename
set count=(select Count(*) from PATIENT WHERE AGE IS NOT NULL)
where table_name=PATIENT
【讨论】:
我假设你的意思是更新我的表?以上是关于用于计算表中行数的 SQL 查询的主要内容,如果未能解决你的问题,请参考以下文章