sql - SQL查询只获取父目录
问题描述
SELECT *
FROM directory
WHERE status_id = 10 AND workspace_id = 1
以上是我的查询和数据库表。
dir_name = 目录名
dir_path = 目录路径
例如,BbB是AaA下的嵌套目录。
当我调用上述数据时,如何为此编写查询,而不是显示所有 5 行,只显示 1 行,即父目录。在这种情况下,只会显示id = 13的数据,因为它是所有数据的父目录。
解决方案
我假设条件,目录结构将是父级和相应的子级。在这种情况下,您可以进行简单查询。
SELECT TOP 1 *
FROM directory
WHERE status_id = 10 AND workspace_id = 1
ORDER BY LEN(dir_path) ASC -- shortest directory path
推荐阅读
- r - rvest:根据内部类文本过滤节点并计算内部svg元素的数量
- rxjs - 将旧的 RxJS 代码转换为 v6:merge、filter、timer、map、first、toPromise()
- jenkins - 如何添加到 groovy 脚本中的现有属性?
- azure - Azure 负载均衡器获取原始客户端 IP
- dataframe - 如何通过 ID 列对两列的值求和,保持某些列具有重复值并排除其他列?
- ruby-on-rails - 在 Rails 中将方法从控制器移动到模型
- java - addView() 不显示视图
- mysql - MySQL - 使用掩码加入表的任何方式?
- node.js - 是否可以在其他应用程序中使用 Angular DI 框架?
- google-sheets - Gmail 标签报告到电子表格