Внутренний номер сотрудника по ID пользователя

Материал из Oktell
Перейти к: навигация, поиск

Наверх

SQL-запрос находит по таблице внутренний номер пользователя по его идентификатору iduser.

ВНИМАНИЕ: У пользователя должен быть "нативный" номер, то есть такой стандартный внутренний номер, в котором только один объект - данный пользователь. Иначе запрос не найдет внутренний номер этого пользователя.

SELECT TOP 1 @prefix=np.Prefix FROM A_NumberPlan np 
INNER JOIN A_NumberPlanAction npa ON np.ID=npa.NumID AND npa.ExtraId IN 
(SELECT RuleID FROM A_RuleRecords 
WHERE reactid=@userid AND InnerAddressType=0 
AND RuleID IN 
(SELECT RuleID FROM A_RuleRecords 
GROUP BY RuleID HAVING COUNT(*)=1)) 
ORDER BY np.Prefix 

где

  • @prefix (вых) - содержит внутренний номер пользователя
  • @userid (вх) - ID пользователя