Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / хитрый SQL запрос????? / 2 сообщений из 2, страница 1 из 1
11.01.2004, 20:13
    #32372575
хитрый SQL запрос?????
Есть таблица состоящая из 3х полей: id,date,operation.
Значения всех полей могут повторяться.Возьмем для примера:
+--+----------+----------+----------+
|id | date |operation |№ записи|
|--|-----------|----------|----------|
| 1|01.01.2003 | принят | 1|
|--|-----------|----------|----------|
| 1|01.02.2003 |переведен| 2|
|--|-----------|----------|----------+
| 1|01.02.2004 | уволен | 4|
|--|-----------|----------|----------|
| 2|01.01.2003 | принят | 3|
|--|-----------|----------|----------+
| 2|01.02.2003 |переведен| 6|
|--|-----------|----------|----------+
| 2|01.02.2004 | уволен | 5|
+--+----------+----------+----------+

Как с помощью SQL'я вытащить из этой таблички записи,скажем, 1 и 3,т.е. те записи,
которые в наборе для id=1 и id=2 являются первыми,или последними,если принять во внимание
сортировку по дате для каждого набора (те первая запись для id=1 по дате будет №1,а
первой записью для id=2 будет №3)?
...
Рейтинг: 0 / 0
12.01.2004, 06:39
    #32372650
Павел Воронцов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
хитрый SQL запрос?????
Вопрос - что является первичным ключом для таблицы? набор (id, date)? Или то, что обозначено как "№ записи"? Если первое, то что-то вроде

Код: plaintext
1.
2.
3.
4.
5.
6.
select id, date, operation
from tbl t
where not exists(select  1  from tbl t1 where t1.id = t.id and t1.date < t.date)

select t.id, t.date, t.operation
from tbl t inner join (select id, min(date) date from tbl group by id) t1
on t1.id = t.id and t1.date = t.date
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / хитрый SQL запрос????? / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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