Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 График доступности рабочего центра  [new]
Vetal_978
Member

Откуда:
Сообщений: 9
Народ, все привет. Не пинайте если баян, но ответа пока не нашел.

Можно ли при помощи запроса сделать следующее:

Есть график работы рабочего центра (оборудования) - рассписание работы.
Есть график занятости рабочего центра -интервалы времени, когда оборудование загружено.
Таблицы выглядят примерно так:
|РабочийЦентр | ДатаВремяНачала | ДатаВремяОкончания|

Нужно построить график доступности рабочего центра - из графика работы выкинуть интервалы времени, когда оборудование уже загружено.

Как эти пересечения сделать запросом?
14 авг 09, 19:26    [7541531]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 33339
Блог
Что то у вас лишнее, по идее - график доступности оборудования является инверсией графика работы)
14 авг 09, 20:57    [7541708]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Vetal_978
Member

Откуда:
Сообщений: 9
наверно плохо объяснил.

например, оборудование работает ежедневно в периоды 08:00 - 12:00 и 13:00 - 17:00 (график работы). В периоды 09:00 - 10:00 и 11:00 - 11:30 оно будет загружено определенными заказами.

Вопрос: на какие периоды можно расспланировать оставшиеся заказы?
Ответ: 08:00 - 09:00, 10:00 - 11:00, 11:30 - 12:00 ну и тд...

как бы это сделать запросом?
14 авг 09, 21:09    [7541719]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Vetal_978
как бы это сделать запросом?


Наверное, написать его его?! Какие у Вас проблемы? Ознакомьтесь, пожалуйста, с Рекомендации по оформлению сообщений в форуме, особенно пункт 6.
14 авг 09, 21:14    [7541728]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Vetal_978
Member

Откуда:
Сообщений: 9
pkarklin
Vetal_978
как бы это сделать запросом?


Наверное, написать его его?! Какие у Вас проблемы? Ознакомьтесь, пожалуйста, с Рекомендации по оформлению сообщений в форуме, особенно пункт 6.


проблема у меня одна - запрос написать не могу
14 авг 09, 22:27    [7541809]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Vetal_978
Member

Откуда:
Сообщений: 9
кстати, не понял суть претензии. она в том, что я тэгами чего-то не оформил?
или в чем?
14 авг 09, 22:29    [7541812]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Glory
Member

Откуда:
Сообщений: 104760
Vetal_978
кстати, не понял суть претензии. она в том, что я тэгами чего-то не оформил?
или в чем?

Тэгами можно оформить только нечто вроде скрипта создания таблицы и заполнения ее данными.
14 авг 09, 22:31    [7541814]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
hpv
Member

Откуда:
Сообщений: 153
Vetal_978,

интервал времени загрузки у вас меньше, либо равен часу?
15 авг 09, 10:23    [7542100]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
hpv
Member

Откуда:
Сообщений: 153
Vetal_978,

и как уже сказали необходимы скрипты создания таблиц...
15 авг 09, 10:26    [7542101]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
hpv
Member

Откуда:
Сообщений: 153
Vetal_978,

@@version в студию.
я так понимаю у вас SQL Server 2000.
15 авг 09, 10:29    [7542102]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Vetal_978
Member

Откуда:
Сообщений: 9
а какая разница какой сервер? допустим sql2000, разве это повлияет на запрос?

и зачем скрипты создания таблиц??? я их еще не создал. мне нужен механизьм, сам запрос :)

интервал может быть любой, не обязательно час. с точностью до тысячной секунды :)
15 авг 09, 11:05    [7542122]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
hpv
Member

Откуда:
Сообщений: 153
Vetal_978,

скрипты нужны чтобы понять какие типы данных ты будешь использовать.
и версия сервера иногда сильно влияет на запрос.
15 авг 09, 11:26    [7542146]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
iljy
Member

Откуда:
Сообщений: 8711
Vetal_978,
версия сервера очень сильно влияет на запрос хотя бы потому, что в новых версиях добавляются новые возможности. Скрипты создания таблиц и заполнения тестовыми данными нужны, чтобы проверить запрос прежде чем его сюда выкладывать. А с точностью до тысячной секунды не получится, потому что точность типа datetime 3 миллисекунды.
15 авг 09, 12:22    [7542187]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Glory
Member

Откуда:
Сообщений: 104760
Vetal_978
а какая разница какой сервер? допустим sql2000, разве это повлияет на запрос?

и зачем скрипты создания таблиц??? я их еще не создал. мне нужен механизьм, сам запрос :)

Механизм будет приблизительно такой
select <тут типа нужные поля>
from <тут типа таблицы, которые вы создадите>
where <тут типа типа условия>
15 авг 09, 16:14    [7542381]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
iljy
Vetal_978,
версия сервера очень сильно влияет на запрос хотя бы потому, что в новых версиях добавляются новые возможности. Скрипты создания таблиц и заполнения тестовыми данными нужны, чтобы проверить запрос прежде чем его сюда выкладывать. А с точностью до тысячной секунды не получится, потому что точность типа datetime 3 миллисекунды.
Противоречие, коллега!
SQL Server 2008
datetime2

Точность 100 наносекунд
15 авг 09, 16:47    [7542428]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
hpv
Member

Откуда:
Сообщений: 153
iap,

у автора 2000 сервер и речь шла о datime, а не о datetime2.
15 авг 09, 17:07    [7542444]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
hpv
iap,

у автора 2000 сервер и речь шла о datime, а не о datetime2.
речь шла о влиянии версии сервера на решение.
15 авг 09, 17:30    [7542470]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Vetal_978
Member

Откуда:
Сообщений: 9
Народ, ну вы че?
ну какая болт разница какой тип данных я буду использовать???

ну кто-нить может помочь составить запрос, решающий описанную задачу для хоть какого-нить sql'я используя ваш любимый тип данных начала и конца периода?
15 авг 09, 21:57    [7542847]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 33339
Блог
Ну раз вы не хотите следовать советам, то
строите таблицу с перечислением всех минут в сутках(1 строка - 1 минута), к этой таблице джойните вашу таблицу занятости, в результате джоина определяете, какая минута у вас не занята. Затем можно объединить полученные незанятые непрерывные интервалы.
)
16 авг 09, 01:41    [7543115]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Vetal_978
Member

Откуда:
Сообщений: 9
Одна строка таблицы - одна единица времени? Я Вас правильно понял? :)
16 авг 09, 15:05    [7543542]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Ray D
Member

Откуда: from the middle of nowhere
Сообщений: 3598
Блог
Нормальный подход. Только вот с минимальным интервалом определитесь. Сколько у вас там записей получится?
16 авг 09, 15:10    [7543546]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Vetal_978
Member

Откуда:
Сообщений: 9
кривой подход. мега-кривой подход.

у меня одна строка - это интервал времени. есть дата начала и дата окончания
16 авг 09, 15:21    [7543559]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Сахават Юсифов
Member

Откуда: Орел
Сообщений: 3992
Vetal_978,

воще в корне неправильный подход :) и тут скл ничем не поможет (ну если рабмест всего несколько...)
16 авг 09, 16:33    [7543635]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
Сахават Юсифов
Member

Откуда: Орел
Сообщений: 3992
А так смотри сюды
тынц
16 авг 09, 16:38    [7543642]     Ответить | Цитировать Сообщить модератору
 Re: График доступности рабочего центра  [new]
i2akai1
Member

Откуда: Петербург
Сообщений: 217
Сахават Юсифов,

я бы сделал циклом и временной таблицей:
брал бы в теле цикла по 1 записи из графика занятости
и вырезал бы из соответствующего периода графика работы этот интервал
оставляя в табличке только свободные интервалы
и так для всех записей о занятости

как сделать одним селектом я не знаю :)
17 авг 09, 10:16    [7544838]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить