Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вопрос про повторяющиеся записи / 2 сообщений из 2, страница 1 из 1
27.06.2016, 13:16
    #39262858
rust1983
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос про повторяющиеся записи
USE worktime
DECLARE @from datetime
DECLARE @to datetime
DECLARE @CheckNumber datetime
SELECT @from='2016-06-22 00:00:01.000',@to='2016-06-22 23:59:59.000',@CheckNumber=215
SELECT distinct
p.[Name],
me.EventTime ,
me.CheckNumber ,
me.TabelNumber ,
case when cc.isOut=0 THEN 'Вход' ELSE 'Выход'END,
cp.NameCheckPoint,
is1.[Description]
FROM _MoveEvent me WITH (NOLOCK)
INNER JOIN _Person p WITH (NOLOCK) ON p.TabelNumber=me.TabelNumber
INNER JOIN _Regulation r WITH (NOLOCK) ON r.UIDStaff=p.UIDStaff and r.StartDate<=@from
INNER JOIN _CheckPointContent cc WITH (NOLOCK) ON me.CheckNumber=cc.NumberCheck
INNER JOIN _CheckPoint cp WITH (NOLOCK) ON cc.IDCheckPoint=cp.ID
INNER JOIN _GroupPointContent gpc WITH (NOLOCK) ON gpc.NameCheckPoint=cp.NameCheckPoint
INNER JOIN _InterbaseSource is1 WITH (NOLOCK) ON cp.IDInterbaseSource=is1.ID AND me.IDInterbaseSource=is1.id
WHERE
me.EventTime BETWEEN @from AND @to
--AND me.CheckNumber in (9, 18, 19, 20, 31, 42, 53, 64, 75, 79, 86, 92, 97, 105, 118, 131, 144, 164, 177, 270, 278, 281, 289, 313, 314, 324, 331, 342, 360, 371, 412, 423, 440, 465, 468, 476, 633, 644, 681, 692, 703, 816, 827, 1059, 1070, 1332, 1438, 1449, 1489, 1500, 1636, 1647, 1677, 1688, 1795, 1806, 1817, 1828, 1839, 1850, 1861, 1973, 1988, 1999, 2066, 2077, 2087, 2091, 2098, 2102, 2119, 2130, 2141, 2152, 2234, 2289, 2300, 2355, 2366, 2471, 2482, 2498, 2773, 2784, 3028, 3039, 3076, 3087, 3190, 3201, 3375, 3397, 3664, 3675, 3827, 4148, 4159, 4253, 4264, 4276, 4287, 4298, 4309, 4320, 4331, 4342, 4353, 4364, 4375, 4386, 4397, 4408, 4419, 4420, 4430, 4431, 4441, 4452, 4463, 4474, 4485, 4496, 4507, 4518, 4529, 4562, 4573, 4584, 4595, 4606, 4617, 4628, 4639, 4672, 4694, 4716, 4727, 4738, 4749, 4705, 4683, 4782, 4793, 5676, 5687, 5698, 5709, 5720, 5731, 5742, 5753, 7859, 7826, 7837, 9785, 9796, 10317, 10328, 10374, 10385, 10894, 10905, 12507, 12518, 13024, 13035, 13046, 13057)
--AND me.CheckNumber in (5817)
--AND p.[Path] LIKE '\ВВ\%'
and me.TabelNumber in (1020576)


Такой вопрос как сделать так чтобы Вход был в одной колонке а Выход в другой
Такой еще вопрос как сделать чтобы в списке был только первый вход и последний выход сотрудника за день, а не все его движения за целый день
...
Рейтинг: 0 / 0
27.06.2016, 13:28
    #39262868
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос про повторяющиеся записи
rust1983USE worktime
DECLARE @from datetime
DECLARE @to datetime
DECLARE @CheckNumber datetime
SELECT @from='2016-06-22 00:00:01.000',@to='2016-06-22 23:59:59.000',@CheckNumber=215
SELECT distinct
p.[Name],
me.EventTime ,
me.CheckNumber ,
me.TabelNumber ,
case when cc.isOut=0 THEN 'Вход' ELSE 'Выход'END,
cp.NameCheckPoint,
is1.[Description]
FROM _MoveEvent me WITH (NOLOCK)
INNER JOIN _Person p WITH (NOLOCK) ON p.TabelNumber=me.TabelNumber
INNER JOIN _Regulation r WITH (NOLOCK) ON r.UIDStaff=p.UIDStaff and r.StartDate<=@from
INNER JOIN _CheckPointContent cc WITH (NOLOCK) ON me.CheckNumber=cc.NumberCheck
INNER JOIN _CheckPoint cp WITH (NOLOCK) ON cc.IDCheckPoint=cp.ID
INNER JOIN _GroupPointContent gpc WITH (NOLOCK) ON gpc.NameCheckPoint=cp.NameCheckPoint
INNER JOIN _InterbaseSource is1 WITH (NOLOCK) ON cp.IDInterbaseSource=is1.ID AND me.IDInterbaseSource=is1.id
WHERE
me.EventTime BETWEEN @from AND @to
--AND me.CheckNumber in (9, 18, 19, 20, 31, 42, 53, 64, 75, 79, 86, 92, 97, 105, 118, 131, 144, 164, 177, 270, 278, 281, 289, 313, 314, 324, 331, 342, 360, 371, 412, 423, 440, 465, 468, 476, 633, 644, 681, 692, 703, 816, 827, 1059, 1070, 1332, 1438, 1449, 1489, 1500, 1636, 1647, 1677, 1688, 1795, 1806, 1817, 1828, 1839, 1850, 1861, 1973, 1988, 1999, 2066, 2077, 2087, 2091, 2098, 2102, 2119, 2130, 2141, 2152, 2234, 2289, 2300, 2355, 2366, 2471, 2482, 2498, 2773, 2784, 3028, 3039, 3076, 3087, 3190, 3201, 3375, 3397, 3664, 3675, 3827, 4148, 4159, 4253, 4264, 4276, 4287, 4298, 4309, 4320, 4331, 4342, 4353, 4364, 4375, 4386, 4397, 4408, 4419, 4420, 4430, 4431, 4441, 4452, 4463, 4474, 4485, 4496, 4507, 4518, 4529, 4562, 4573, 4584, 4595, 4606, 4617, 4628, 4639, 4672, 4694, 4716, 4727, 4738, 4749, 4705, 4683, 4782, 4793, 5676, 5687, 5698, 5709, 5720, 5731, 5742, 5753, 7859, 7826, 7837, 9785, 9796, 10317, 10328, 10374, 10385, 10894, 10905, 12507, 12518, 13024, 13035, 13046, 13057)
--AND me.CheckNumber in (5817)
--AND p.[Path] LIKE '\ВВ\%'
and me.TabelNumber in (1020576)


Такой вопрос как сделать так чтобы Вход был в одной колонке а Выход в другой
Такой еще вопрос как сделать чтобы в списке был только первый вход и последний выход сотрудника за день, а не все его движения за целый день


Да что вы привезались к SQL запросам.
Ну не могут они делать некоторые вещи (разве только через одно место)
Создайте Рекорд сет, а там творите что угодно.
Чё вы привезались к SQL ну не может он делать некоторые вещи.
И вообще имея "толстого клиента" лучьше делать на нем.
Уже замучали своими SQL портянками.
С уважением.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вопрос про повторяющиеся записи / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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