请教 SQL 问题:如何使用 SQL 展示指定文档下所有的子文档

本贴最后更新于 602 天前,其中的信息可能已经时移世易

我想通过 SQL 随机抽取指定文档的下级文档,包括指定文档的子文档的子文档。

通过参考思源 SQL 新人指南:SQL 语法 + Query + 模板 - 链滴 (ld246.com),目前写出的 SQL 只能展示指定文档下一级的子文档,不能展示子文档的子文档。

自己写的 SQL 如下,请教如何修改才能读取所有层级的子文档。

select * from blocks where path like '%/指定文档id/%' and type='d' ORDER BY random() LIMIT 3
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    26332 引用 • 109505 回帖 • 1 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    10124 引用 • 46010 回帖 • 63 关注

相关帖子

被采纳的回答

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • player 1 via Linux

    有点复杂。有一些插件可以写 js,然后运行。可以通过代码来写。纯 sql 不好阅读维护。

  • 我的测试没有问题,怀疑是 limit 太小了。

    1 回复
  • 感谢,解决了。1.调大 limit。2.重建数据库。3.重启软件。

    除了 limit 可能太小外,我的二级子文档是从其他笔记本转移进去的,数据索引好像没更新。重建 + 重启后 SQL 可以正常搜索到了。

  • fortun5 1 via macOS

    这段 SQL 会把子文档内容全都提取出来吧?不知道能不能只展示标题

    1 回复
  • 我一开始是想实现只展示标题的,但是没找到实现的方法,就退而求其次提取文档全文了。

    2 回复
  • fortun5 via macOS

    😳 我也是咨询了一圈,没有只提取展示标题的方法。。

    1 回复
  • suiji 1

    用挂件 query,不会把全文带出来,只展示条目。但是简单的查询语句得出的查询结果只是平等地罗列文档条目,不能反映父子关系。别的我不会了。

    类似的,挂件 note view 能更好看地展示,查询结果同 query,也是只展示条目,不能反映父子关系。也许行吧,但我不懂。

    1 回复
  • fortun5 via macOS

    谢谢。之前也试用过 query 挂件,体验不是太好,样式也不够原生,于是就放弃了 。。

  • 推荐 list 子文档挂件,它可以任意生成某个文档的子文档,甚至全空间的。能保留文档树的排序,能体现父子关系。

    比如我在日记里查 帮助文档``内容块 文档的子文档,只需要复制对应 id 过去即可。

    image.png

    image.png

    1 操作
    mozhu 在 2023-11-21 10:22:33 更新了该回帖
  • q631263135 1 评论

    还好我看到了这条评论,不然我这一天又没了

    "我一开始是想实现只展示标题的,但是没找到实现的方法,就退而求其次提取文档全文了。"
    q631263135
请输入回帖内容 ...
5Z4Uo6oGvKPB7o
半退论坛,只看不说。祝思源可以走得更远

推荐标签 标签

  • Flume

    Flume 是一套分布式的、可靠的,可用于有效地收集、聚合和搬运大量日志数据的服务架构。

    9 引用 • 6 回帖 • 661 关注
  • OneDrive
    2 引用 • 5 关注
  • RIP

    愿逝者安息!

    8 引用 • 92 回帖 • 409 关注
  • V2Ray
    1 引用 • 15 回帖 • 4 关注
  • 房星科技

    房星网,我们不和没有钱的程序员谈理想,我们要让程序员又有理想又有钱。我们有雄厚的房地产行业线下资源,遍布昆明全城的 100 家门店、四千地产经纪人是我们坚实的后盾。

    6 引用 • 141 回帖 • 611 关注
  • Vue.js

    Vue.js(读音 /vju ː/,类似于 view)是一个构建数据驱动的 Web 界面库。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

    268 引用 • 666 回帖 • 4 关注
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    7 引用 • 30 回帖 • 376 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    35 引用 • 468 回帖 • 764 关注
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 563 关注
  • Ruby

    Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,在 20 世纪 90 年代中期由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)设计并开发。在 Ruby 社区,松本也被称为马茨(Matz)。

    7 引用 • 31 回帖 • 266 关注
  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    29 引用 • 66 回帖
  • Scala

    Scala 是一门多范式的编程语言,集成面向对象编程和函数式编程的各种特性。

    13 引用 • 11 回帖 • 153 关注
  • JRebel

    JRebel 是一款 Java 虚拟机插件,它使得 Java 程序员能在不进行重部署的情况下,即时看到代码的改变对一个应用程序带来的影响。

    26 引用 • 78 回帖 • 682 关注
  • 音乐

    你听到信仰的声音了么?

    62 引用 • 512 回帖
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 368 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    53 引用 • 190 回帖 • 1 关注
  • Lute

    Lute 是一款结构化的 Markdown 引擎,支持 Go 和 JavaScript。

    29 引用 • 202 回帖 • 29 关注
  • 数据库

    据说 99% 的性能瓶颈都在数据库。

    346 引用 • 757 回帖 • 1 关注
  • Maven

    Maven 是基于项目对象模型(POM)、通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。

    188 引用 • 319 回帖 • 239 关注
  • MongoDB

    MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是一个基于分布式文件存储的数据库,由 C++ 语言编写。旨在为应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 JSON 的 BSON 格式,因此可以存储比较复杂的数据类型。

    91 引用 • 59 回帖
  • 友情链接

    确认过眼神后的灵魂连接,站在链在!

    24 引用 • 373 回帖 • 2 关注
  • Sphinx

    Sphinx 是一个基于 SQL 的全文检索引擎,可以结合 MySQL、PostgreSQL 做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。

    1 引用 • 224 关注
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    25 引用 • 248 回帖
  • Visio
    1 引用 • 2 回帖 • 2 关注
  • 新人

    让我们欢迎这对新人。哦,不好意思说错了,让我们欢迎这位新人!
    新手上路,请谨慎驾驶!

    52 引用 • 228 回帖
  • PWA

    PWA(Progressive Web App)是 Google 在 2015 年提出、2016 年 6 月开始推广的项目。它结合了一系列现代 Web 技术,在网页应用中实现和原生应用相近的用户体验。

    14 引用 • 69 回帖 • 186 关注
  • 印象笔记
    3 引用 • 16 回帖