Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.08;
Скачать: CL | DM;

Вниз

Отбор записей из таблицы с разным значением определенного   Найти похожие ветки 

 
galexis ©   (2003-04-17 18:15) [0]

Есть таблица, в которой записи одого и тго же предприятия отличаются по его номеру. Можно ли написать такой запрос, который выбирал бы из записей таблицы только по одной записи с одинаковым значением поля? Что бы не было потом в DBGrid строк с одним и тем же наименованием. Т.е. SELECT DISTINCT отбирает только разные записи, а чем бы отобрать записи только с разным значением поля.


 
neXt ©   (2003-04-17 18:36) [1]

group by
если я правильно понял


 
Zacho ©   (2003-04-17 23:25) [2]

Ничего не понял.. По какой одной ? Сформулируй вопрос корректнее.


 
galexis ©   (2003-04-18 09:32) [3]

>Zacho ©

Есть у меня записи в таблице с полями NUM, NAME и другими.
Значения в этих двух полях могут повторятся, т.е могут быть записи 123 NAME1, 124 NAME2, 123 NAME1, 123 NAME1. Другие поля у этих записей отличаются. Мне нужно выбрать список из этой таблицы, т.е. только две записи NAME1 и NAME2. А сейчас после SELECT получаю повторяющиеся наименования, т.е. NAME1, NAME2, NAME1, NAME1.


 
ЮЮ ©   (2003-04-18 09:40) [4]

Почитай, хотя бы, LocalSQL.hlp, пожалуйста.
SELECT DISTINCT Name FROM Table


 
Johnmen ©   (2003-04-18 09:42) [5]

SELECT DISTINCT FieldName FROM TableName :
NAME1
NAME2


 
Sergey13 ©   (2003-04-18 11:10) [6]

2galexis © (18.04.03 09:32)
>Есть у меня записи в таблице с полями NUM, NAME и другими.
>Значения в этих двух полях могут повторятся,
ИМХО, что то тут с нормализацией не все впорядке.


 
Жук ©   (2003-04-18 11:14) [7]


> Sergey13 © (18.04.03 11:10)

Почему ? Вполне нормальная ситуация. Пример :
Список работников : id,fam,imja,otchestwo. Вполне возможно, что там может оказаться два разных Анатолиев Подгородецких. :-)


 
Sergey13 ©   (2003-04-18 11:17) [8]

2Жук © (18.04.03 11:14)
>Вполне возможно, что там может оказаться два разных Анатолиев Подгородецких. :-)
Если с одинаковым ID - НЕТ. 8-(


 
galexis ©   (2003-04-18 11:51) [9]

>ЮЮ ©
>Johnmen ©

SELECT DISTINCT позволяет отобрать из повторяющихся полностью аналогичных записей одну. Т.е. если все поля одной записи совпадают со всеми полями другой. У меня же все записи разные. В таблице не два поля, а около 20 и лишь два из них могут иметь одно и тоже значение, но в целом записи отличаются друг от друга. Так что DISTINCT тут не подходит.


 
Johnmen ©   (2003-04-18 12:02) [10]

>galexis © (18.04.03 11:51)
>Т.е. если все поля одной записи совпадают со всеми полями другой

Нет. См. синтаксис SELECT DISTINCT.


 
galexis ©   (2003-04-18 12:21) [11]

>Johnmen ©

Действительно. Свою ошибку понял. Нельзя писать так: SELECT DISTINCT A.*, B.NUM,B.NAME from ...
Надо обязательно указывать наименование полей (нельзя *) иначе смысл DISTINCT теряется


 
Жук ©   (2003-04-18 13:09) [12]

Аминь.



Страницы: 1 вся ветка

Текущий архив: 2003.05.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.027 c
1-23228
Till
2003-04-25 13:17
2003.05.08
Помогите не поиму почему у меня из-за if не работает код


14-23353
anSonja
2003-04-18 13:09
2003.05.08
Как распарсить Word-овский файл?


3-23042
ArtemB
2003-04-18 16:39
2003.05.08
Query и КЭШ


1-23193
Salvator
2003-04-21 22:40
2003.05.08
Работа с Word


14-23307
RavenD
2003-04-17 10:28
2003.05.08
Как CMap в VC