2015-09-10 8 views
0

Это будет простой, я просто не могу понять это.MS SQL/SSRS Параметры запроса

select * from table 

Возвращает:

|Item|Ordernumber|Color 
|apple|2|Green| 
|orange|2|yellow| 
|apple|3|Red| 

Я хочу, чтобы фильтровать по цвету

select * from table 
where color = Green 

я, как и ожидалось

|Item|Ordernumber|Color 
|apple|2|Green| 

Я хотел бы, чтобы показать все детали для тот же номер заказа, если заказ содержит любой ms с цветом Зеленый

|Item|Ordernumber|Color 
|apple|2|Green| 
|orange|2|yellow| 

Я создаю параметр в SSRS.

ответ

1

Вы можете сначала получить номер заказа из внутреннего запроса (где цвет зеленый) и join его в исходную таблицу.

select item, t.ordernumber, color 
from table t join 
(select ordernumber from table 
where color = 'Green') x 
on x.ordernumber = t.ordernumber 
0

Вы должны создать параметр цвета и поставить фильтр параметров вместо жесткого кодирования цвета в коде ниже: -

select item, ordernumber, color 
from table where ordernumber in 
(select distinct ordernumber from table 
where color = 'Green') 
Смежные вопросы