Задавайте вопросы, мы ответим
Вы не зашли.
Здравствуйте уважаемые!
Есть такая вьюшка:
ALTER ALGORITHM=UNDEFINED `view_rules` AS
SELECT `cl`.`cam_id` AS `cam_id`,
`cu`.`user_id` AS `user_id`,
`cu`.`group_id` AS `group_id`,
`cu`.`user_login` AS `user_login`,
`cl`.`cam_name` AS `cam_name`,
`cl`.`allowed_to_all` AS `allowed_to_all`,
`cu`.`is_admin` AS `is_admin`,
`crg`.`rule_status` AS `rule_status_group`,
`cr`.`rule_status` AS `rule_status`,
(case when ((`cl`.`allowed_to_all` > 0) and isnull(`crg`.`rule_status`) and isnull(`cr`.`rule_status`) and (`cu`.`is_admin` = 0))
then `cl`.`allowed_to_all` when ((`crg`.`rule_status` is not null) and isnull(`cr`.`rule_status`) and (`cu`.`is_admin` = 0))
then `crg`.`rule_status` when ((`cr`.`rule_status` is not null) and (`cu`.`is_admin` = 0)) then `cr`.`rule_status` when (`cu`.`is_admin` > 0)
then `cu`.`is_admin` else 0 end) AS `result`
FROM (((`cams_list` `cl` join `cams_users` `cu`)
left join `cams_rules` `cr` on(((`cr`.`user_id` = `cu`.`user_id`) and (`cr`.`cam_id` = `cl`.`cam_id`))))
left join `cams_rules_groups` `crg` on(((`crg`.`group_id` = `cu`.`group_id`) and (`crg`.`cam_id` = `cl`.`cam_id`))))
ORDER BY `cu`.`user_id`
Смысл переделки вот в чём. Нужно добавить cams_groups.group_name в эту вьюшку, отсортировать по cams_groups.group_id и поля rule_status_group, rule_status могут иметь значение NULL, остальные нет)
Если у кого будет свободная минутка, можете поразмыслить)) Я уже свой неокрепший мозг сломал.
Файл с таблицами прилагается
Неактивен
То есть вся эта выборка с условиями сделана для user_id, user_login, а надо для group_id, group_name
Неактивен