在这里搜索了很多之后,我找不到解决我的问题的方法。所以,我发布这个问题。
我有一个数据库表,其结构如下:
folder_id folder_name parent_id
--------------------------------------
1 Private 0
2 Public 0
3 Photos 0
4 December 3
5 Bday 4
6 Celeb 5
在分层形式中,它就像一个文件夹结构:
-- Private
-- Public
-- Photos
----- December
-------- Bday
----------- Celeb
现在,我想选择一个特定文件夹的路径,例如Bday或Celeb文件夹。因此,我想要一个 MySQL 查询,它只返回包含特定文件夹路径之间的文件夹的行。
例如,如果我想要一个Celeb文件夹的路径,那么查询应该只返回这些行:
folder_id folder_name parent_id
--------------------------------------
3 Photos 0
4 December 3
5 Bday 4
6 Celeb 5
目前,我被这个查询卡住了,我无法让它工作。我目前正在尝试的查询:
SELECT f.*
FROM fd_folders f
LEFT JOIN fd_folders p
ON f.folder_id = p.parent_id
WHERE f.folder_id <=6
ORDER BY f.folder_id;
但是,问题在于它还返回了另外两个文件夹,即Private和Public。
请帮忙。
谢谢你
此致