![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DISTINCT?
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