AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题 / 323533
Accepted
Valter Ekholm
Valter Ekholm
Asked: 2023-02-16 01:38:29 +0800 CST2023-02-16 01:38:29 +0800 CST 2023-02-16 01:38:29 +0800 CST

如何在 MS Access 中打印类别树

  • 772

我有一张能力表。我把它变成了父子关系,所以例如,驾驶执照是一行,汽车驾驶执照是另一行,父级是“驾驶执照”。

这可以在 MS-Access 中、报告中或其他什么地方打印吗?像树一样打印,或者像这样的列表:

  1. 驾照
  2. 驾驶执照下的汽车驾驶执照

该表有 5 列,选择查询如下所示:

SELECT Kompetenser.[ID], Kompetenser.[created_date], Kompetenser.[namn], Kompetenser.[Metakompetens], Kompetenser.[beskrivning] FROM Kompetenser;

其中 Kompetenser.[Metakompetens] 是指同一张表的“数字”(瑞典语“Tal”)。

我找到了一个帖子是同一个问题,并且有答案,但是我无法运行 sql:

https://stackoverflow.com/a/45797072/5730322

(虽然它给出了一个列表,其中的行以父项开头,但没关系)

我试着做一个查询:

SELECT
L0.namn AS Cat0,
L1.namn AS Cat1,
L2.namn AS Cat2,
L3.namn AS Cat3,
L4.namn AS Cat4,
L5.namn AS Cat5,
L6.namn AS Cat6,
L7.namn AS Cat7
FROM
Kompetenser AS L0
LEFT JOIN Kompetenser AS L1
ON L0.ID=L1.[Metakompetens]
LEFT JOIN AS L2
ON L1.ID = L2.Metakompetens
LEFT JOIN Kompetenser AS L3
ON L2.ID = L3.Metakompetens
LEFT JOIN Kompetenser AS L4
ON L3.ID = L4.Metakompetens
LEFT JOIN Kompetenser AS L5
ON L4.ID = L5.Metakompetens
LEFT JOIN Kompetenser AS L6
ON L5.ID = L6.Metakompetens
LEFT JOIN Kompetenser AS L7
ON L6.ID = L7.Metakompetens
WHERE isnull(L0.Metakompetens)

它说(译自瑞典语):

语法错误(缺少运算符)我查询 'L0.ID=L1.[Metakompetens] ... 到查询结尾

所以问题是如何修复我的sql。

ms-access
  • 1 1 个回答
  • 18 Views

1 个回答

  • Voted
  1. Best Answer
    Andriy M
    2023-02-18T04:39:25+08:002023-02-18T04:39:25+08:00

    MS Access 连接语法很特殊。当您的查询需要多个时,您必须开始使用括号。更具体地说,为了介绍下一个连接,您需要将上一个连接括在括号中。例如,这是两个连接的样子:

    SELECT
      ...
    FROM
      (Table1
      JOIN Table2 ON ...)
      JOIN Table3 ON ...
    

    这是添加第三个连接后您的查询需要更改的方式:

    SELECT
      ...
    FROM
      ((Table1
      JOIN Table2 ON ...)
      JOIN Table3 ON ...)
      JOIN Table4 ON ...
    

    继续以这种方式根据需要添加尽可能多的括号,以涵盖查询所需的所有连接。

    这与连接类型(左、右、内)无关。

    • 1

相关问题

  • 从数据库中获取数据并将其放回新的数据表

  • MS Access 将 SQL Server 表中的所有列显示为“已删除”

  • 并发问题?

  • 使用参数查询在 MS Access 报告中生成图表

  • 通过 SQL Job Agent 查询网络共享上的 Linked Access 数据库

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve