[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как пропустить совпавшие записи из таблицы?
Dimaz
Приветствую всех. Возможно ли выполнить такой sql-запрос, чтобы получить записи из таблицы, но совпавшие пропустить? Если нельзя, то как это можно реализовать по другому?
kaww
select * from table where id not in (1,2,3,4,5)
Dimaz
Не понял, а что это даст? У меня в таблице могут совпадать номера телефонов. Мне нужно получить список всех номеров, но совпавшие номера в таблице он должен пропустить. Такое возможно?
kaww
Т.е. не вбирать записи с повторяющимися значениями? тогда
select * from phone_book group by phone_number having count(*) = 1

Hello
SELECT DISTINCT
http://www.w3schools.com/sql/sql_distinct.asp

_____________
VPS от 5$, первые 2 месяца - бесплатно.
glock18
Цитата (Hello @ 20.12.2012 - 09:20)
SELECT DISTINCT
http://www.w3schools.com/sql/sql_distinct.asp

Увы, может не помочь если требуется искать совпадения не по всем полям. При уникальном ключе в таблице 100% не поможет.

решение с group by универсально в этом плане и позволит подобрать необходимый критерий
Dimaz
Цитата (kaww @ 20.12.2012 - 09:16)
Т.е. не вбирать записи с повторяющимися значениями? тогда
select * from phone_book group by phone_number having count(*) = 1

Что-то не работает. Он выбирает только один номер телефона, который у меня в таблице встречается один раз, а все остальные пропускает.
kaww
Он выбирает только один номер телефона, который у меня в таблице встречается один раз, а все остальные пропускает.
, разве это не было целью?
glock18
Цитата (kaww @ 20.12.2012 - 09:29)
Он выбирает только один номер телефона, который у меня в таблице встречается один раз, а все остальные пропускает.
, разве это не было целью?

выходит, речь шла о пропуске повторений wink.gif
Dimaz
Целью было получить список всех номеров, а совпавшие пропустить, я писал выше. SELECT DISTINCT сработало. Hello, спасибо. И всем спасибо за ответы. Вопрос решен.
glock18
Цитата (Dimaz @ 20.12.2012 - 09:27)
Цитата (kaww @ 20.12.2012 - 09:16)
Т.е. не вбирать записи с повторяющимися значениями? тогда
select * from phone_book group by phone_number having count(*) = 1

Что-то не работает. Он выбирает только один номер телефона, который у меня в таблице встречается один раз, а все остальные пропускает.

ну вы бы хоть посмотрели что за запрос такой вообще. гугл, мануал. Чай, и разобрались бы почему только уникальные номера возвращает ;)
glock18
Цитата (Dimaz @ 20.12.2012 - 09:33)
Целью было получить список всех номеров, а совпавшие пропустить, я писал выше. SELECT DISTINCT сработало. Hello, спасибо. И всем спасибо за ответы. Вопрос решен.

если вам таки ничего кроме номера телефона из таблицы не надо, то решен. если еще что-то надо, то, увы, нет
neadekvat
glock18, один селект с полями, второй - в условии where?
glock18
Цитата (neadekvat @ 20.12.2012 - 11:55)
glock18, один селект с полями, второй - в условии where?

зачем? запрос один - просто группировка по полям, по которым повторения нужно отсечь.

фактически запрос kaww без части having
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.