思源笔记sql语法

SQL的使用

可以直接输入/嵌入块​,/embed​ ,也可以打两个花括号 {{ }}​,然后在窗口中输入特定格式的语法就可以实现了。需要参考思源笔记用户指南的「数据库表」和「类型过滤」

数据库表说明

思源数据库共有如下 7 张表(以及两张虚拟表 blocks_fts与 blocks_fts_case_insensitive),在搜索框中与嵌入块中使用 SQL 查询仅能渲染 blocks表中的内容, 但是可以使用其他表进行辅助查询。

表1:assets-资源引用表

字段名 字段值示例 说明
id 20211127144458-uinrvpj 引用 ID
block_id 20210512171633-u3iy2xx 块 ID
root_id 20200915214115-42b8zma 文档 ID
box 20210808180117-czj9bvb 笔记本 ID
docpath /20200812220555-lj3enxa/20210808180321-hbvl5c2/20200915214115-42b8zma.sy 文档路径
path assets/siyuan-128-20210604092205-djd749a.png 资源文件路径
name siyuan-128-20210604092205-djd749a.png 资源文件名
title 源于思考,饮水思源 资源标题
hash 788c154262194a126b433b1055fbddcf5ada066e0d1f565a54e5550125675075 资源哈希值

表2:attributes-属性表

字段名 字段值示例 说明
id 20211127144458-h7y55zu 属性 ID
name bookmark 属性名称
value 属性值
type b 类型
block_id 20210428212840-859h45j 块 ID
root_id 20200812220555-lj3enxa 文档 ID
box 20210808180117-czj9bvb 笔记本 ID
path /20200812220555-lj3enxa.sy 文档文件路径

name字段值

  • bookmark: 书签
  • name: 命名
  • alias: 别名
  • memo: 备注
  • fold: 折叠
  • heading-fold: 标题折叠
  • style: 样式
  • custom-XXX: 自定义属性

type 字段值

  • b: 块属性
  • s: 样式属性

表3:blocks-内容块

  • 该表还有两张全文本搜索(FTS)虚拟表, 用于更高效地全文搜索, 字段名称一致

    • blocks_fts​: 英文字母大小写敏感
    • blocks_fts_case_insensitive​: 英文字母大小写不敏感
字段名 字段值示例 说明
id 20210104091228-d0rzbmm 内容块 ID
parent_id 20200825162036-4dx365o 双亲块 ID
如果内容块是文档块则该字段为空
root_id 20200825162036-4dx365o 文档块 ID
hash a75d25c content 字段的 SHA256 校验和
box 20210808180117-czj9bvb 笔记本 ID
path /20200812220555-lj3enxa/20210808180320-abz7w6k/20200825162036-4dx365o.sy 内容块所在文档路径
hpath /0 请从这里开始/编辑器/排版元素 人类可读的内容块所在文档路径
name 一级标题命名 内容块名称
alias 一级标题别名 内容块别名
memo 一级标题备注 内容块备注
tag(v2.0.4 新增) #标签1 非文档块为块内包含的标签文档块为文档的标签
content 一级标题 去除了 Markdown 标记符的文本
fcontent(v1.9.9 新增) 第一个子块 存储容器块第一个子块的内容(1.9.9 添加)
markdown # 一级标题 包含完整 Markdown 标记符的文本
length 6 markdown 字段文本长度
type h 内容块类型,参考⸢类型字段⸥
subtype h1 内容块子类型,参考⸢子类型字段⸥
ial {: id="20210104091228-d0rzbmm" updated="20210604222535"} 内联属性列表,形如 {: name="value"}
sort 5 排序权重
数值越小排序越靠前
created 20210104091228 创建时间
updated 20210604222535 更新时间

type字段值

  • d: 文档块(仅在文档名上搜索,不会搜索文档包含内容块)
  • h: 标题块(仅在标题名上搜索,不会搜索标题块下方内容块)
  • l: 列表块(包含有序列表块、无序列表块和任务列表块)
  • i: 列表项块
  • c: 代码块
  • m: 数学公式块
  • t: 表格块
  • b: 引述块
  • s: 超级块
  • p: 段落块
  • tb: 分隔线
  • html: HTML 块
  • video: 视频块
  • audio: 音频块
  • widget: 挂件块
  • iframe: iframe
  • query_embed: 嵌入块

subtype 字段值

  • 列表块/列表项块子类型:

    • o:有序
    • u:无序
    • t:任务
  • 标题块子类型:

    • h1:一级
    • h2:二级
    • h3:三级
    • h4:四级
    • h5:五级
    • h6:六级

表4:file_annotation_refs-文件(PDF)注释引用

字段名 字段值示例 说明
id 20220110165814-wgit0t4 引用 ID
file_path assets/vim-reference-2.3.0 - Wei Zhi-20211230002422-9gbzdu0.pdf 关联文件路径
annotation_id 20220110165331-699dvqv 被引用注释 ID
block_id 20220110165327-kfadm4z 引用所在内容块 ID
root_id 20211230002404-5spavgt 引用所在文档块 ID
box 20210914201520-i0v92g9 引用所在笔记本 ID
path /20211230002404-5spavgt.sy 引用所在文档块路径
content Vim 中文手册 引用锚文本
type 注释类型

表5:refs-引用块

字段名 字段值示例 说明
id 20211127144458-idb32wk 引用 ID
def_block_id 20200925095848-aon4lem 被引用块的块 ID
def_block_parent_id 20200905090211-2vixtlf 被引用块的双亲节点的块 ID
def_block_root_id 20200905090211-2vixtlf 被引用块所在文档的 ID
def_block_path /20200812220555-lj3enxa/20210808180320-fqgskfj/20200905090211-2vixtlf.sy 被引用块所在文档的路径
block_id 20210104090624-c5bu25o 引用所在内容块 ID
root_id 20200905090211-2vixtlf 引用所在文档块 ID
box 20210808180117-czj9bvb 引用所在笔记本 ID
path /20200812220555-lj3enxa/20210808180320-fqgskfj/20200905090211-2vixtlf.sy 引用所在文档块路径
content 元类型 引用锚文本
markdown ((20200925095848-aon4lem "元类型")) 包含完整 Markdown 标记符的文本
type ref_id 引用类型

表6:spans-行内元素

字段名 字段值示例 说明
id 20211127144458-rwt8qka 行内元素 ID
block_id 20210429172522-ceauu94 元素所在内容块 ID
root_id 20200812220555-lj3enxa 元素所在文档块 ID
box 20210808180117-czj9bvb 元素所在笔记本 ID
path /20200812220555-lj3enxa.sy 元素所在文档块路径
content 请勿在帮助指南中保存数据 元素内容
markdown 请勿在帮助指南中保存数据 包含完整 Markdown 标记符的元素内容
type strong 元素类型
ial {: style="background-image: linear-gradient(to right, var(--b3-theme-primary), var(--b3-theme-error)); -webkit-background-clip: text; color: transparent;"} 元素样式

行内元素类型

type新字段值 v2.2.0+ type 字段值 content 字段值示例 markdown 字段值示例 说明
img 图片锚文本 ![图片文本](assets/siyuan-128-20210604092205-djd749a.png "图片标题") 图片
tag 测试 #测试# 文档标签
textmark a link_text 超链接锚文本 超链接锚文本 [超链接锚文本](https://github.com/mermaid-js/mermaid "超链接标题") 链接
textmark block-ref 块引用锚文本 ((20220830155254-jyybm5j '块引用锚文本')) 块引用锚文本
textmark code code_span &rsquo \\’\ 行内代码
textmark em em 开源软件 *开源软件* 斜体
textmark file-annotation-ref 文件(PDF)引用锚文本 \<\<assets/PDF-20211230002422-9gbzdu0.pdf/20220110165331-699dvqv "文件(PDF)引用锚文本">> 文件(PDF)引用锚文本
textmark inline-math inline_math \overset{ ext{shang}}{上} \$\overset{\text{shang}}{上}\$ 行内公式
textmark inline-memo 备注原文备注内容
memocontent
备注原文\^(备注内容)\^
memo\^(content)\^
行内备注-备注原文为中文行内备注-备注原文为西文
textmark kbd kbd fn fn 按键样式
textmark mark mark 0000000000 \=\=0000000000\=\= 高亮
textmark s strikethrough 0000000000 \~\~0000000000\~\~ 删除线
textmark strong stong 专业软件 **专业软件** 粗体
textmark sub sub B \~B\~ 下标
textmark sup sup A \^A\^ 上标
textmark tag tag 思源笔记 #思源笔记# 标签
textmark u underline 注1 \<u>注1\</u> 下划线

表7:stat-其他信息

key value 说明
siyuan_database_ver 20211022 数据库版本
20211127144654-wd72ryx_hash 499ec649a66ffb730a90a8a54f8cb266436cea568ff4e4ad9698e0c537f24170 ID 为 20211127144654-wd72ryx 的笔记本的哈希