Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DISTINCT?


Страницы:   1 2

Piter ©   (2004-05-10 00:22:00) 

Как можно извлечь все поля, но чтобы поле Some не повторялось?


sniknik   (2004-05-10 14:33:00) [21]

> Да нет такого понятия "инкремент/декремент".
словарь Lingvo
increment  (Словари: Общ. лексика англ.; Экономика англ.; Компьютерный англ.)

сущ.

1)

а) возрастание, расширение, увеличение

an increment in salary — увеличение зарплаты

daily increments to our knowledge — ежедневное возрастание наших знаний

Syn:

enlargement, increase 1., augmentation, growth

б) геральдика прибывание (о луне)

The moon is in increment, when her horns point to the dexter. — Луна находится в стадии прибывания, когда на геральдическом поле ее рога указывают влево от зрителя.

2) приращение, прирост, надбавка, прибыль

increment of rent — надбавка к арендной плате

The increment of heat which proves fatal is from 11 deg. to 12 deg. Fahr. above the natural temperature of the animal. — Рост температуры относительно нормы на 11-12 градусов по Фаренгейту является для животного фатальным.

Syn:

increase, growth

3) матем. бесконечно малое приращение; инкремент; дифференциал

MSSQL
incremental values
incrementally updating cubes
incrementally updating dimensions


а Вы что имели ввиду?


Курдль   (2004-05-10 13:42:00) [22]


> оно необязательно должно быть первичным ключем, обязательно
> должно возрастать (инкремент), или убывать.

Да нет такого понятия "инкремент/декремент". Есть понятие "первичный ключ" и "уникальное поле". Как правило, в 99% случаев в таблице достаточно одного уникального поля - первичного ключа. А для Вашего случая - и подавно!


sniknik   (2004-05-10 13:36:00) [23]

> Ну Вы бы объяснили человеку, что по выполнению такого запроса будут выбраны первые строки с уникальным Field1, а остальные -
> потеряны!
обьясняли уже, не понял других и неня не поймет. а попробует (если не просто куски п рограмму лепит, а пробует перед этим) сам поймет.

> А сказать "первичный ключ" для Firebird язык не повернулся?
оно необязательно должно быть первичным ключем, обязательно должно возрастать (инкремент), или убывать.


Курдль   (2004-05-10 13:26:00) [24]


> sniknik ©   (10.05.04 13:21) [8]

Ну Вы бы объяснили человеку, что по выполнению такого запроса будут выбраны первые строки с уникальным Field1, а остальные - потеряны!

> ID должен быть автоинкрементом по синтаксису других баз
> (с генератором по синтаксису Firebird).

А сказать "первичный ключ" для Firebird язык не повернулся?


sniknik   (2004-05-10 13:21:00) [25]

SELECT * FROM Table1 WHERE ID IN (SELECT Min(ID) FROM Table1 GROUP BY Field1)

ID должен быть автоинкрементом по синтаксису других баз (с генератором по синтаксису Firebird).


Курдль   (2004-05-10 13:18:00) [26]


> вернет только поле Field1 у записей. А мне надо вернуть
> все поля у записи, но чтобы поле Field1 не повторялось.
> Аля:
>
> SELECT * DISTINCT Field1

Это понятно! Но ведь если у Вас 2 записи с одинаковым полем Field1, то какая-то из них будет утеряна. Вы определитесь - какая! Первая? Последняя? Или остальные поля в таких записях будут усреднены (выбраны максимальные и т.п)?


Piter   (2004-05-10 13:14:00) [27]

>Johnmen ©   (10.05.04 03:09) [4]

Firebird


Anatoly Podgoretsky   (2004-05-10 09:15:00) [28]

А нету


Johnmen   (2004-05-10 03:09:00) [29]

СУБД ?


Piter   (2004-05-10 02:23:00) [30]

Вы, наверное, не поняли.

Допустим:

SELECT DISTINCT Field1

вернет только поле Field1 у записей. А мне надо вернуть все поля у записи, но чтобы поле Field1 не повторялось. Аля:

SELECT * DISTINCT Field1


Курдль   (2004-05-10 01:10:00) [31]


> Как можно извлечь все поля, но чтобы поле Some не повторялось?

Все зависит от того, как Вы хотели бы потерять подлинные значения остальных полей. Если привести к агрегатным - [1].
А если нет, то по какому принципу выбирать единственную и неповторимую строку?


jack128   (2004-05-10 00:40:00) [32]

Если остальные поля - числовые, то можно взять агрегатные функции от этих полей

select Some, avg(DigitField)
from MyTable
group by Some


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо