2015-04-11 5 views
2

Я искал почти все, что мог придумать, и не смог найти решение, соответствующее моим потребностям. Это довольно просто в теории: мне нужно объединить несколько строк результирующего набора по их членскому коду. Значения для столбцов цены всегда будут одинаковыми для каждого кода-члена, и только один процент цены на один членский код.T-SQL Как объединить несколько строк в одну строку

Таблица

|Member_Code|price 1|price 1%|price 2|price 2%| 
|  eeeee|  15|  10|  20|  0| 
|  eeeee|  15|  0|  20|  50| 

Результат мне нужно

|Member_Code|price 1|price 1%|price 2|price 2%| 
|  eeeee|  15|  10|  20|  50| 

Моя таблица содержит 60000 записей, так что я не могу просто сделать

select max(column) where member_code = x 

СКП скрипку http://sqlfiddle.com/#!6/7f084/1

Пожалуйста, может кто-то указать мне в правильном направлении.

Благодаря

ответ

4

GROUP BY Member_Code с MAX агрегатная функция на цену колонок поможет

select 
[Member_Code], 
max([Price List 1]), 
max([Price List 1%]), 
max([Price List 2]), 
max([Price List 2%]), 
max([Price List 3]), 
max([Price List 3%]) 
from Table1 
group by [Member_Code] 
+0

Спасибо! примет ваш ответ shorlty. я попробовал эту опцию, но только поместил max на% colums, которые, конечно, не удались – kurt

Смежные вопросы