Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Удаление повторяющихся значений / 10 сообщений из 10, страница 1 из 1
08.02.2018, 11:24
    #39598809
roma1905
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
Добрый день. Знаю эта тема поднималась не раз но не могу найти того что нужно)
И так вопрос: Существует таблица

id, telephone_1, name
1, 111, Ivan
2, 122, Jora
3, 123, Sasha
4, 111, Ivan
5, 122, Jora
6, 134, Volodea

Необходим код который выберет только уникальные значения (Неповторяющиеся) и вывод чтоб был подобный:

id,telephone_1, name
3,123, Sasha
6, 134, Volodea
...
Рейтинг: 0 / 0
08.02.2018, 11:25
    #39598811
Гигабайт Мегабайтович Килобайтов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
а если 7,111,Sasha ?
...
Рейтинг: 0 / 0
08.02.2018, 11:25
    #39598812
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
roma1905, FAQ
...
Рейтинг: 0 / 0
08.02.2018, 11:26
    #39598813
roma1905
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
Выбираем и сравниваем только по столбцу 2 - telephone_1
...
Рейтинг: 0 / 0
08.02.2018, 11:38
    #39598824
roma1905
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
roma1905Выбираем и сравниваем только по столбцу 2 - telephone_1
соответственно не будет выводиться строка 7
...
Рейтинг: 0 / 0
08.02.2018, 11:52
    #39598841
waszkiewicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
roma1905,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
;with cte (id,ph,name) as
(
select	1, 111, 'Ivan'
union all
select 2, 122, 'Jora'
union all
select 3, 123, 'Sasha'
union all
select 4, 111, 'Ivan'
union all
select 5, 122, 'Jora'
union all
select 6, 134, 'Volodea'
)
select max(id) id,ph,name from cte
group by ph,name
having count(ph)=1
...
Рейтинг: 0 / 0
08.02.2018, 12:33
    #39598874
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
Код: sql
1.
2.
3.
WITH CTE AS (SELECT *,C=COUNT(*)OVER(PARTITION BY telephone_1, name) FROM T)
SELECT id, telephone_1, name
FROM CTE WHERE C=1;
...
Рейтинг: 0 / 0
08.02.2018, 13:06
    #39598910
waszkiewicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
iap, ему походу только уникальные нужны
...
Рейтинг: 0 / 0
08.02.2018, 13:12
    #39598915
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
waszkiewicziap, ему походу только уникальные нужныВ чём подвох?
...
Рейтинг: 0 / 0
08.02.2018, 13:24
    #39598932
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление повторяющихся значений
roma1905Выбираем и сравниваем только по столбцу 2 - telephone_1Значит, так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
WITH T AS(SELECT * FROM(VALUES
 (1, 111, 'Ivan')
,(2, 122, 'Jora')
,(3, 123, 'Sasha')
,(4, 111, 'Ivan')
,(5, 122, 'Jora')
,(6, 134, 'Volodea')
,(7, 111, 'Sasha')
)A(id, telephone_1, name)
)
,CTE AS (SELECT *,C=COUNT(*)OVER(PARTITION BY telephone_1/*, name*/) FROM T)
SELECT id, telephone_1, name
FROM CTE WHERE C=1;
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Удаление повторяющихся значений / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]