у меня есть следующие таблицы:отсчет(), соответствующий макс() различных значений, удовлетворяющих некоторому условию
user_group
usergrp_id bigint Primary Key
usergrp_name text
пользователя
user_id bigint Primary Key
user_name text
user_usergrp_id bigint
user_loc_id bigint
user_usergrp_id
имеет соответствующее i d из таблицы user_group user_loc_id
имеет свой идентификатор id (branch_id) из таблицы ветвей.
филиал
branch_id bigint Primary Key
branch_name text
branch_type smallint
branch_type
По умолчанию устанавливается равным 1. Хотя может содержать любое значение в диапазоне от 1 до 4.
user_projects
proj_id bigint Primary Key
proj_name text
proj_branch_id smallint
proj_branch_id
имеет его соответствующий id (branch_id) со вкладки ветки ле.
user_approval
appr_id bigint Primary Key
appr_prjt_id bigint
appr_status smallint
appr_approval_by bigint
appr_approval_by
имеет соответствующий идентификатор (user_id) из пользовательской таблицы
appr_status
могут содержать различные значения состояния, как 10,20,30 ... для одного appr_prjt_id
user_group
usergrp_id | usergrp_name
-------------------------
1 | Admin
2 | Manager
пользователь
user_id | user_name | user_usergrp_id |user_loc_id
---------------------------------------------------
1 | John | 1 | 1
2 | Harry | 2 | 1
филиал
branch_id | branch_name | branch_type
-------------------------------------
1 | location1 | 2
2 | location2 | 1
3 | location3 | 4
4 | location4 | 2
5 | location4 | 2
user_projects
proj_id | proj_name | proj_branch_id
------------------------------------
1 | test1 | 1
2 | test2 | 2
3 | test3 | 1
4 | test4 | 3
5 | test5 | 1
6 | test5 | 4
user_approval
appr_id | appr_prjt_id | appr_status | appr_approval_by
-------------------------------------------------------
1 | 1 | 10 | 1
2 | 1 | 20 | 1
3 | 1 | 30 | 1
4 | 2 | 10 | 2
5 | 3 | 10 | 1
6 | 3 | 20 | 2
7 | 4 | 10 | 1
8 | 4 | 20 | 1
Состояние: Выход должен принимать значение appr_status
MAX()
для каждого appr_prjt_id
и считать.
I.e., в приведенной выше таблице appr_prjt_id=1
имеет 3 различных статуса: 10, 20, 30.Его счет должен отображаться только для статуса, соответствующего 30 на выходе (не в статусах 10 и 20), соответствующих группе пользователей в определенном branch_name
. Точно так же для каждого другого идентификаторы в области appr_prjt_id
Желаемая Выход:
10 | 20 | 30
------> Admin 0 | 1 | 1
|
location1
|
------> Manager 1 | 1 | 0
Как я могу это сделать?
Что это за часть: 'порядок от 1, 3 desc'? – saji89
@saji Это означает заказ по 1-му столбцу выбора, затем на 3-й –
. Спасибо за эту информацию. – saji89