powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / SQLite [игнор отключен] [закрыт для гостей] / SQL запрос с "group by", получить первое значение поля ...
5 сообщений из 5, страница 1 из 1
SQL запрос с "group by", получить первое значение поля ...
    #37214062
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте !!!

Есть таблица:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
RuhCinCapSub
(
  `RuhCinCapSubID` INTEGER PRIMARY KEY AUTOINCREMENT, 
  `DirectoryCinostID` INTEGER NOT NULL,
  `ZALP` decimal( 10 , 2 ) NOT NULL DEFAULT '0.00',
  ...
)

Надо построить запрос, сгруппировав по полю "DirectoryCinostID" - оно повторяется, притом получить первое значение поля "ZALP" .

Например, при таком запросе:
Код: plaintext
1.
2.
3.
SELECT DirectoryCinostID, ZALP
FROM RuhCinCapSub
group by DirectoryCinostID
я получу последнее значения поля "ZALP ", а не первое, как надо бы ...

Заранее спасибо всем откликнувшимся !!!
...
Рейтинг: 0 / 0
SQL запрос с "group by", получить первое значение поля ...
    #37214927
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понятия "первая запись" или "последняя запись" в SQL смысла не имеют.
...
Рейтинг: 0 / 0
SQL запрос с "group by", получить первое значение поля ...
    #37216439
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну почему ???
при
Код: plaintext
group by DirectoryCinostID
берётся последнее значение поля "ZALP".

П.С. В общем мне получилось получить первое значение этого поля )))
...
Рейтинг: 0 / 0
SQL запрос с "group by", получить первое значение поля ...
    #37216967
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
potkinНу почему ???
при
Код: plaintext
group by DirectoryCinostID
берётся последнее значение поля "ZALP".Это случайность.
Сегодня у тебя получилось, a завтра (после удаления-добавления строк) не получится. Записи в базе данных не сортированны в принципе. Читай букварь по SQL.

Если хочешь выбирать первую и/или последнюю запись в группе записей - пронумеруй записи внутри группы. Либо просто цифрой, либо временем создания записи, либо еще чем-либо. А потом на основе этой созданной нумерации уже и выбирай первую, последнюю или любую другую.
...
Рейтинг: 0 / 0
SQL запрос с "group by", получить первое значение поля ...
    #37250782
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlЭто случайность.

Не не случайность - протестил как мог: и удалял и добавлял и изменял данные. Работает )))
авторЕсли хочешь выбирать первую и/или последнюю запись в группе записей - пронумеруй записи внутри группы. Либо просто цифрой, либо временем создания записи, либо еще чем-либо. А потом на основе этой созданной нумерации уже и выбирай первую, последнюю или любую другую.
Типа того и применил, правда вышел 3-х этажный запрос и медленно работает, если выборку делать "большую" (группировать много записей), но это делают только в конце месяца, квартала и года (когда "года" - *опа полная). А так терпимо.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / SQL запрос с "group by", получить первое значение поля ...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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