powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Исключить повторяющиеся значения при SELECT
8 сообщений из 8, страница 1 из 1
Исключить повторяющиеся значения при SELECT
    #39153616
murtukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!

Мне нужно убрать из результатов SELECT'а все повторяющиеся значения (оставив лишь одно из них).
DISTINCT не подходит, потому что он проверяет все поля в совокупности.
Например, если есть 3 поля, и мне нужно вывести все 3, но при этом нужно применить DISTINCT только к первым двум, а не ко всем, как быть?

GROUP BY подошел бы, если бы мне нужно было проверять повторения по одному полю. Но вот как быть с двумя и бОльшим количеством полей - не знаю. Вот в PostgreSQL можно было бы просто написать DISTINCT ON ( тут перечислить поля ).

Спасибо
...
Рейтинг: 0 / 0
Исключить повторяющиеся значения при SELECT
    #39153628
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
murtukovGROUP BY подошел бы, если бы мне нужно было проверять повторения по одному полю. Но вот как быть с двумя и бОльшим количеством полей - не знаю.В GROUP BY можно и несколько выражений писать, не обязательно одно.
...
Рейтинг: 0 / 0
Исключить повторяющиеся значения при SELECT
    #39153638
murtukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Но оно в отличие от DISTINCT не проверяет поля в совокупности, если вы понимаете о чем я.
Нужно, чтобы исключались только те строки, где повторяются значения и в первом поле и во втором.
Говоря языком программирования, нужен
Код: php
1.
if(field1 AND field2)

а не
Код: php
1.
if(field1 OR field2).
...
Рейтинг: 0 / 0
Исключить повторяющиеся значения при SELECT
    #39153641
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
murtukov,

Ничего не понял.
Не вижу, что мешает написать GROUP BY field1, field2.
Если это не устраивает, то показывайте конкретный пример исходных данных и желаемого результата.
...
Рейтинг: 0 / 0
Исключить повторяющиеся значения при SELECT
    #39153680
murtukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

все верно говорите, я кое-что проглядел и условие неверно составил.
Условие такое: усключить из результатов все повторяющиеся строки по полю name , у которых status = true

Пример: есть таблица


Надо сделать запрос, чтобы в результате получилось это:


Строка 5 не удалилась, потому что у нее статус false.
...
Рейтинг: 0 / 0
Исключить повторяющиеся значения при SELECT
    #39153800
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
  SELECT MIN(id) id, name, status
  FROM `table`
  WHERE status = 'true'
  GROUP BY name, status
UNION ALL
  SELECT id, name, status
  FROM `table`
  WHERE status <> 'true'
...
Рейтинг: 0 / 0
Исключить повторяющиеся значения при SELECT
    #39153974
murtukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

спасибо, именно то что надо!(
...
Рейтинг: 0 / 0
Исключить повторяющиеся значения при SELECT
    #39154004
murtukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
murtukov, смайлик не тот вставил)
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Исключить повторяющиеся значения при SELECT
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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