Предельные значения, отображаемые в списке выбора на основе данных - PullRequest
1 голос
/ 09 мая 2019

У меня есть следующие таблицы:

Table1
___________
Location_ID
User_ID
Type_ID

UserTypes
_________
Type_ID Type_name
1111    Type1
2222    Type2

Я отображаю данные в интерактивной сетке для определенного местоположения, а для типа пользователя есть список выбора, который извлекает данные из таблицы UserTypes:

SELECT Type_name d, type_id r                                                            
FROM  UserTypes
WHERE (is_active=1 OR type_id = TO_NUMBER(:type_id))

Для каждого местоположения может быть только один пользователь Type1, поэтому всякий раз, когда я добавляю запись в сетку, я хочу проверить, существует ли уже пользователь типа Type1 для этого конкретного местоположенияID, так что если это так, я только хочу отобразить опцию Type 2 в списке выбора.Как я могу изменить источник моего столбца, чтобы включить это?

1 Ответ

0 голосов
/ 09 мая 2019

Я думаю, вам нужно решение с ключевым словом EXISTS, например, ниже одного

SELECT Type_name d, type_id r                                                            
  FROM  UserTypes u
 WHERE EXISTS ( SELECT Type_ID 
                  FROM Table1 
                 WHERE Type_ID = u.Type_ID
                   AND Type_ID = TO_NUMBER(:type_id)
                   AND Type_name = 'Type1'
                 GROUP BY Type_ID
                HAVING count(*)=1 
                )
   AND is_active=1
   AND Type_name = 'Type2';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...