0
こんにちは私は親ノードのすべての子ノードを取得するtbl_userという名前のテーブルを持っています。親のIDを使用してすべての子ノードを取得
すべての親IDにはそれぞれ左右のノードがあります。
私のテーブル構造とデータ
-- phpMyAdmin SQL Dump
-- version 4.1.14
-- http://www.phpmyadmin.net
--
-- Host: 127.0.0.1
-- Generation Time: Sep 19, 2017 at 08:29 PM
-- Server version: 5.6.17
-- PHP Version: 5.5.12
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */;
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */;
/*!40101 SET @[email protected]@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Database: `mlm`
--
-- --------------------------------------------------------
--
-- Table structure for table `tbl_user`
--
CREATE TABLE IF NOT EXISTS `tbl_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` varchar(100) DEFAULT NULL,
`full_name` varchar(100) DEFAULT NULL,
`display_name` varchar(100) DEFAULT NULL,
`email` varchar(100) DEFAULT NULL,
`mobile` varchar(100) DEFAULT NULL,
`password` varchar(100) DEFAULT NULL,
`address` text,
`country_id` int(11) DEFAULT NULL,
`state_id` int(11) DEFAULT NULL,
`city_id` int(11) DEFAULT NULL,
`parent_id` varchar(100) DEFAULT NULL,
`user_position` varchar(100) DEFAULT NULL,
`sponser_id` varchar(100) DEFAULT NULL,
`plan_id` int(10) NOT NULL,
`status` varchar(100) DEFAULT NULL,
`user_created` date NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=30 ;
--
-- Dumping data for table `tbl_user`
--
INSERT INTO `tbl_user` (`id`, `user_id`, `full_name`, `display_name`, `email`, `mobile`, `password`, `address`, `country_id`, `state_id`, `city_id`, `parent_id`, `user_position`, `sponser_id`, `plan_id`, `status`, `user_created`) VALUES
(18, 'OR201701', 'Chita Ranjan Mirdha', 'Chitta', '[email protected]', '9861180448', '317419d46c44c40b99f7351739dbec74', NULL, 99, 24, 719, NULL, 'center', NULL, 1, 'active', '2017-09-17'),
(19, 'OR317639', 'Binayak Das', 'Binayak', '[email protected]', '9861180448', '317419d46c44c40b99f7351739dbec74', NULL, 99, 11, 222, 'OR201701', 'left', 'OR201701', 1, 'Pending', '2017-09-17'),
(20, 'OR480484', 'Soumya Ranjan Das', 'Soumya', '[email protected]', '9439149608', '317419d46c44c40b99f7351739dbec74', NULL, 99, 24, 722, 'OR201701', 'right', 'OR201701', 1, 'active', '2017-09-20'),
(23, 'OR594192', 'Sidharth Das', 'Sidharth', '[email protected]', '9861180448', '317419d46c44c40b99f7351739dbec74', NULL, 99, 3, 85, 'OR480484', 'left', 'OR201701', 2, 'Pending', '2017-09-17'),
(24, 'OR355157', 'Rohit Kerketta', 'Rohit', '[email protected]', '9861180448', '74b87337454200d4d33f80c4663dc5e5', NULL, 99, 20, 693, 'OR480484', 'right', 'OR201701', 1, 'Pending', '2017-09-17'),
(25, 'OR435604', 'Jabesh Ghanta', 'Jabesh', '[email protected]', '9861180448', '74b87337454200d4d33f80c4663dc5e5', NULL, 99, 24, 719, 'OR317639', 'left', 'OR201701', 2, 'Pending', '2017-09-17'),
(26, 'OR539892', 'Abhishek Behera', 'Daddu', '[email protected]', '9861180448', '11ddbaf3386aea1f2974eee984542152', NULL, 99, 12, 281, 'OR317639', 'right', 'OR201701', 1, 'Pending', '2017-09-18'),
(27, 'OR776071', 'Lalatendu Das', 'LULU', '[email protected]', '9861180488', '8f60c8102d29fcd525162d02eed4566b', NULL, 99, 11, 209, 'OR355157', 'left', 'OR355157', 1, 'Pending', '2017-09-18'),
(28, 'OR119885', 'Jyotirmaya Das', 'Tikana', '[email protected]', '9861180448', '8f60c8102d29fcd525162d02eed4566b', NULL, 99, 5, 112, 'OR355157', 'right', 'OR355157', 1, 'Pending', '2017-09-20'),
(29, 'OR135842', 'Ashish Kumar Samantray', 'Asish', '[email protected]', '9861180448', 'decc8686654b465e5313259325149a86', NULL, 99, 24, 716, 'OR435604', 'left', 'OR355157', 2, 'Pending', '2017-09-19');
/*!40101 SET [email protected]_CHARACTER_SET_CLIENT */;
/*!40101 SET [email protected]_CHARACTER_SET_RESULTS */;
/*!40101 SET [email protected]_COLLATION_CONNECTION */;
は、私は、ユーザーが親ノードであるユーザーでログイン手段に記録され、すべての子ノードを取得するために多くのことを試してみました。
私はuser_idにparent_idを持っています。 mysqlにデータをインポートすると、データと構造についてのアイデアが得られます。
わかりやすくするために、ツリー構造をアップロードしています。
これは私のデータのバイナリ構造です。しかし、私は上記の与えたものを私の現在のクエリを1として
下の6件の結果を示しているように、テーブル にもデータが欲しいです。しかし、クエリはバイナリツリーごとに9つの結果を表示する必要があります。
私はよく考えています。疑問があればお尋ねください。