gpt4 book ai didi

php - 获取类别: Without using join query in mySql的半树

转载 作者:行者123 更新时间:2023-11-29 12:04:32 25 4
gpt4 key购买 nike

我想从类别表中获取类别的半树

mySql 代码:

CREATE TABLE IF NOT EXISTS `category` (
`cat_id` int(11) NOT NULL AUTO_INCREMENT,
`parent_id` int(11) NOT NULL,
`cat_name` varchar(255) NOT NULL,
PRIMARY KEY (`cat_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;

INSERT INTO `category` (`cat_id`, `parent_id`, `cat_name`) VALUES
(1, 0, 'sadasd'),
(2, 0, 'fsdfsadf'),
(3, 1, 'fasdfasd'),
(4, 1, 'ewrwer'),
(5, 4, 'cxzxczxc'),
(6, 5, 'sadasdqwqwqw'),
(7, 2, 'sadasd');

问题:

我想获取cat_id为1的类别的层次结构。

不使用连接查询仅使用 1 个查询没有任何 php 循环

如果您想更改数据库结构,则可以更改它。

我想要这样的输出:

cat_id 1
- cat_id 3
- cat_id 4
- cat_id 5
- cat_id 6

最佳答案

经过一番努力,终于解决了这个问题。

mySql Code:

CREATE TABLE IF NOT EXISTS `category` (
`cat_id` int(11) NOT NULL AUTO_INCREMENT,
`parent_id` int(11) NOT NULL,
`cat_name` varchar(255) NOT NULL,
`parentids` varchar(255) NOT NULL,
PRIMARY KEY (`cat_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;

INSERT INTO `category` (`cat_id`, `parent_id`, `cat_name`, `parentids`) VALUES
(1, 0, 'sadasd', ''),
(2, 0, 'fsdfsadf', ''),
(3, 1, 'fasdfasd', '|1|'),
(4, 1, 'ewrwer', '|1|'),
(5, 4, 'cxzxczxc', '|1|,|4|'),
(6, 5, 'sadasdqwqwqw', '|1|,|4|,|5|'),
(7, 2, 'sadasd', '|2|');

创建此表后,触发上面的 sql 查询。

从父级类似“%|1|%”的类别中选择*;

关于php - 获取类别: Without using join query in mySql的半树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31770171/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com