|
помогите с запросом
| ☑ |
0
Puzoter
04.07.13
✎
14:08
|
В таблице 30 записей по трем сотрудникам - по 10 на каждого. Нужно выбрать первые три записи для каждого сотрудника, можно это сделать в запросе? Или выгружать в таблицу и обрабатывать ее в цикле?
|
|
1
Tanis
04.07.13
✎
14:09
|
выбрать первые 3
|
|
2
Classic
04.07.13
✎
14:09
|
(0)
Уникальный ключ в рамках одного сотрудника есть?
|
|
3
Puzoter
04.07.13
✎
14:11
|
(2) Будем считать фамилия
|
|
4
Classic
04.07.13
✎
14:12
|
+(2)
Если есть, то
ВЫБРАТЬ
*
ИЗ РегистрСведений.ляляля КАК РС
ГДЕ
РС.ТвойКлюч В
(
ВЫБРАТЬ ПЕРВЫЕ 3
РСВ.ТвойКлюч
ИЗ РегистрСведений.ляляля КАК РСВ
ГДЕ РСВ.Сотрудник = РС.Сотрудник
УПОРЯДОЧИТЬ ПО
РСВ.ТвойКлюч
)
|
|
5
Classic
04.07.13
✎
14:18
|
Хотя конечно ФАМИЛИЯ - ниразу не уникальный ключ в рамках сотрудника :)
|
|
6
Puzoter
04.07.13
✎
14:25
|
(5) Да, я понял, нужен уникальный ключ строки
|
|
7
Classic
04.07.13
✎
14:31
|
(6)
Достаточно уникального в рамках сотрудника. Т.е. чтоб пара (Сотрудник, Ключ) не дублировалась. Давай уже поля своей таблицы
|
|
8
Puzoter
04.07.13
✎
14:51
|
(7) Сделал уникальные поля функцией Количество, все получилось, спасибо
|
|