Задать вопрос
@draaax

Как осуществить поиск не повторяющихся записей?

Помогите, пожалуйста, написать запрос на получение записей с уникальными полями email и phone.
Нашел такой вариант, но тут выводится без строгого совпадения, т.е. email или phone.

SELECT 
	id, 
	email, 
	phone
FROM 
	table
WHERE (
	email,
	phone
) 
IN (
	SELECT 
		email,
		phone
	FROM 
		table
	GROUP BY
		email,
		phone
	HAVING COUNT(id) = 1
)
  • Вопрос задан
  • 111 просмотров
Подписаться 1 Средний 6 комментариев
Решения вопроса 1
jemunjho
@jemunjho
А зачем здесь подзапрос, если таблица одна и та же?

SELECT DISTINCT
    email,
    phone
  FROM 
    table


Но если это временная таблица - то можно просто напросто сделать выборку с подзапросом как-то так:
SELECT * FROM table1 t1, (
SELECT DISTINCT
    email,
    phone
  FROM 
    table) AS t2
WHERE t1.email = t2.email AND t1.phone = t2.phone
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
чудесов нету

самое надежная - отдельная табла с уникальным индексом по этой паре полей

но distinct, если чо, тоже должон работать
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы