Sunday, 15 September 2013

mysql - Get information about all rows from one table, when in join table that row is not -



mysql - Get information about all rows from one table, when in join table that row is not -

how obtain in case in table useritems not record joined moduleitems null?

select `users`.*, `useritems`.*, `moduleitems`.*, `modulesubitems`.* `users` left bring together `useritems` on useritems.f_user_id = users.user_id left bring together `moduleitems` on moduleitems.moduleitem_id = useritems.f_moduleitem_id left bring together `modulesubitems` on modulesubitems.modulesubitem_id = useritems.useritem_value

edit: my db structure

create table if not exists `moduleitems` ( `moduleitem_id` int(11) not null auto_increment, `f_module_id` int(11) not null, primary key (`moduleitem_id`) ) engine=innodb default charset=utf8 auto_increment=63 ; create table if not exists `modules` ( `module_id` int(11) not null auto_increment, primary key (`module_id`) ) engine=innodb default charset=utf8 auto_increment=2 ; create table if not exists `modulesubitems` ( `modulesubitem_id` int(11) not null auto_increment, `f_moduleitem_id` int(11) not null, primary key (`modulesubitem_id`) ) engine=innodb default charset=utf8 auto_increment=19 ; create table if not exists `useritems` ( `f_user_id` int(11) not null, `f_moduleitem_id` int(11) not null, `useritem_value` varchar(255) default null, primary key (`f_user_id`,`f_moduleitem_id`) ) engine=innodb default charset=utf8; create table if not exists `users` ( `user_id` int(11) not null auto_increment, primary key (`user_id`) ) engine=innodb default charset=utf8 auto_increment=35 ;

if see every moduleitem each user, regardless if have matching record in useritems table, should work:

select `users`.*, `useritems`.*, `moduleitems`.*, `modulesubitems`.* `users` cross bring together `moduleitems` left bring together `useritems` on useritems.f_user_id = users.user_id , moduleitems.moduleitem_id = useritems.f_moduleitem_id left bring together `modulesubitems` on modulesubitems.modulesubitem_id = useritems.useritem_value

mysql sql

No comments:

Post a Comment