0

他们要求我编写一个显示下表的查询: 在此处输入图像描述

  • 选择每个表作为字符串
  • 选择属性数作为整数(计算每个表的属性数)。
  • 使用 COUNT(*) 函数选择行数
  • 使用复合运算符 UNION ALL 将这些行绑定在一起。

我怎么做?

我知道要获取每个表的名称,我必须使用

SELECT name AS table_name
  FROM sqlite_schema
 WHERE type = 'table'

但其余的对我来说是个谜。你能帮我吗?

谢谢!!!

在这里你可以找到数据库

4

1 回答 1

0

这为您提供了前两列:

SELECT
    sch.name AS table_name,
    COUNT(pti.name) AS number_of_attributes
FROM sqlite_schema AS sch,
    pragma_table_info(sch.name) AS pti
WHERE sch.type = 'table'
GROUP BY sch.name;

我不知道如何在名称包含在字符串中的表中运行 COUNT。

于 2021-10-04T22:37:51.140 回答