@XenK

MySQL выбрать только уникальные значения?

Есть таблица:

id | name
1  | Ivan
2  | Ivan
3  | Egor
4  | Nikita
5  | Nikita
6  | Anton


Необходимо оставить только уникальные записи, чтобы получилось так:

id | name
3  | Egor
6  | Anton


Как это сделать?
  • Вопрос задан
  • 380 просмотров
Решения вопроса 2
qonand
@qonand
Software Engineer
Если правильно понял задачу тогда как-то так:
DELETE
FROM
	tablename
WHERE
	name IN (
		SELECT
			name
		FROM
			tablename
		GROUP BY
			NAME
		HAVING
			count(*) > 1
	)
Ответ написан
@XenK Автор вопроса
Решил задачу таким способом:

SELECT *
FROM
  docs
WHERE
  name IN (
    SELECT
      name
    FROM
      docs
    GROUP BY
      name
    HAVING
      count(*) < 2
  )
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
DELETE `t1`.*
  FROM `table` AS `t1`
  JOIN `table` AS `t2` ON `t2`.`name` = `t1`.`name`
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы