Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
den6677
Guest |
Есть csv фаил например 150 колонок и надо получить из него результат где будет distinct по каждой колонке. есть так: col1 col2 col3 col4 df 3 dre gt 87 fr 5 dre gt null df 3 frt null dd null gttr null 3e 3 56t null получить надо так: col1 col2 col3 col4 df 3 dre gt 87 fr 5 56t null dd null frt 3e gttr |
14 окт 13, 22:28 [14969856] Ответить | Цитировать Сообщить модератору |
den6677
Guest |
тут лучше видно К сообщению приложен файл. Размер - 41Kb |
14 окт 13, 22:31 [14969869] Ответить | Цитировать Сообщить модератору |
Добрый Э - Эх
Guest |
select каждого столбца по отдельности + ROW_NUMBER + JOIN результатов в единую таблицу |
15 окт 13, 05:42 [14970535] Ответить | Цитировать Сообщить модератору |
Knyazev Alexey Member Откуда: Екб -> Мск Сообщений: 10234 Блог |
declare @t table ( col1 varchar(6), col2 varchar(6), col3 varchar(6), col4 varchar(6) ) insert into @t values ( 'df', '3', 'dre gt', '87' ) , ( 'fr', '5', 'dre gt', null ) , ( 'df', '3', 'frt', null ) , ( 'dd', null, 'gttr', null ) , ( '3e', '3', '56t', null ); with cte as ( select row_number() over ( partition by col order by val ) id, * from ( select distinct * from @t t unpivot ( val for col in ( col1, col2, col3, col4 ) ) up ) t ) select pv.col1, pv.col2, pv.col3, pv.col4 from cte pivot ( max(val) for col in ( [col1], [col2], [col3], [col4] ) ) pv col1 col2 col3 col4 |
15 окт 13, 07:55 [14970604] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |