chapter_tree表有id pid 两列为子父级关系 如何查询出一个id下所有子父级关系的 id
时间: 2024-04-12 13:32:31 浏览: 26
要查询给定 id 下的所有子父级关系的 id,您可以使用递归查询或者使用通用表达式(CTE)来实现。下面是两种不同的方法:
方法一:使用递归查询
```sql
WITH RECURSIVE cte AS (
SELECT id, pid
FROM chapter_tree
WHERE id = <your_id> -- 替换为要查询的 id
UNION ALL
SELECT t.id, t.pid
FROM chapter_tree t
JOIN cte ON t.pid = cte.id
)
SELECT id FROM cte;
```
方法二:使用通用表达式(CTE)
```sql
WITH cte AS (
SELECT id, pid
FROM chapter_tree
WHERE id = <your_id> -- 替换为要查询的 id
UNION ALL
SELECT t.id, t.pid
FROM chapter_tree t
JOIN cte ON t.pid = cte.id
)
SELECT id FROM cte;
```
以上两种方法都是基于递归查询,它们会逐级追溯给定 id 下的所有子父级关系。您可以根据具体情况选择其中一种方法进行查询。请注意,上述示例中的 `<your_id>` 需要替换为您要查询的实际 id 值。
相关问题
张俊 book表 id bookname bookchapter表 id chaptername bookid(其中book_id字段是book表的外键) 写sql语句,查询出每本书的章节总数
您好,以下是查询每本书的章节总数的 SQL 语句:
SELECT b.bookname, COUNT(c.id) AS chaptercount
FROM book AS b
LEFT JOIN bookchapter AS c ON b.id = c.book_id
GROUP BY b.id;
希望能对您有所帮助。如果您还有其他问题,欢迎继续提问。
张俊 book表 id bookname bookchapter表 id chaptername bookid(其中bookname字段是book表的外键) 写sql语句,查询出每本书的章节总数
Sure, here's the SQL query to retrieve the total number of chapters for each book:
SELECT book.bookname, COUNT(bookchapter.id) AS total_chapters
FROM book
INNER JOIN bookchapter ON book.id = bookchapter.bookid
GROUP BY book.bookname
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)