Мне нужна помощь.Что я должен использовать в SQL на основе имени входа [выберите SUBSTRING (SUSER_NAME (), 13.10], чтобы отобразить различное содержимое таблицы на основе WHERE?
В каждом из имен входа должны отображаться данные, основанные на другихГДЕ.
Я пытаюсь использовать этот код, но у меня все еще есть проблема
select *,
case when t1.login = (select SUBSTRING (SUSER_NAME (), 13,10) then (select pok from t1 where pok = @pok) else 'N' end as result
from t1
РЕДАКТИРОВАТЬ:
Я создал отчет вSSRS - данные отображаются в зависимости от вошедшего в систему пользователя. Здесь все воспроизводится. Однако для региональных директоров в их отчете мне нужно создать новую таблицу со сводкой их продавцов в регионе.
Существующая таблица table1
| DATA | SALES | PROFIT | EXPRENSE | PROFIABILITY | REGION |
|--------|--------|--------|----------|--------------|--------|
| 201901 | Sales1 | 50 | 50 | 0 | A |
| 201901 | Sales2 | 100 | 50 | 50 | A |
| 201901 | Sales3 | 105 | 55 | 50 | B |
| 201901 | Sales4 | 90 | 80 | 10 | C |
| 201901 | Sales5 | 190 | 80 | 110 | A |
Отчет создается для каждого человека на основе входа в систему, но для Sales5 необходимо создать отчет Sales1, поскольку он работает в одном регионе, а Sales5 - егодиректор.
Код индивидуального отчета следующий:
select * from t1
WHERE
data in (@data_raportu)
AND
t1.sales in (
SELECT distinct [sales]
FROM [test]. [Dbo]. [T2]
where [login_sales] in (@sales_filtr))