sqlitebrowser / sqlitebrowser/sqlitebrowser
[Feature]: Tree-shaped output for explain query plan
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- C++
- Star
- 24.6k
- Fork
- 2.4k
- Merge trung bình
- 3 ngày 49 phút
- Pull request đã merge (30 ngày)
- 3
Mô tả
Describe the new feature
Currently DB Browser outputs the results of explain query plan the same way it outputs everything else - a table with rows:
| id | parent | notused | detail |
|---|---|---|---|
| 2 | 0 | 0 | CO-ROUTINE 2 |
| 5 | 2 | 0 | CO-ROUTINE 4 |
| 7 | 5 | 0 | CO-ROUTINE 1 |
| 15 | 7 | 0 | SCAN TABLE Foo AS b |
| 17 | 7 | 0 | SEARCH TABLE Bar AS o USING INDEX sqlite_autoindex_Objects_1 (Baz=?) |
| 26 | 7 | 0 | USE TEMP B-TREE FOR GROUP BY |
| 68 | 5 | 0 | SCAN SUBQUERY 1 AS x |
| 78 | 5 | 0 | USE TEMP B-TREE FOR ORDER BY |
| 94 | 2 | 0 | SCAN SUBQUERY 4 |
| 160 | 0 | 0 | SCAN SUBQUERY 2 AS y |
This is not particularly easy to read, especially as query plans get more complex. A tree-shaped output would make things much easier to reason about and share. A plain text tree would be easy to create from the information above:
QUERY PLAN
|--CO-ROUTINE 2
| |--CO-ROUTINE 4
| | |--CO-ROUTINE 1
| | | |--SCAN TABLE Foo AS b
| | | |--SEARCH TABLE Bar AS o USING INDEX sqlite_autoindex_Objects_1 (Baz=?)
| | | `--USE TEMP B-TREE FOR GROUP BY
| | |--SCAN SUBQUERY 1 AS x
| | `--USE TEMP B-TREE FOR ORDER BY
| `--SCAN SUBQUERY 4
`--SCAN SUBQUERY 2 AS y
Does this feature exist in another product or project? Please provide a link
Probably there is something that already outputs this format, but I'm not sure. The idea is from https://stackoverflow.com/a/71412757.
Do you have a screenshot? Please add screenshots to help explain your idea.
No response
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Issue không nêu tên tệp nguồn, bài kiểm thử hoặc điểm vào nào. Hãy bắt đầu bằng việc xác định phần xử lý hiện có của EXPLAIN QUERY PLAN trong DB Browser và theo dõi cách các hàng của nó được hiển thị; hoàn thành có nghĩa là cùng một kế hoạch được trình bày dưới dạng cây văn bản dễ đọc với các hàng cha và hàng con lồng nhau.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- cpp, sqlite
- Lĩnh vực
- database
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100