Вопрос : Таблица взгляда вверх SQL при множественные справки основанные на поле даты уточнения

Здравствулте!,

Trying для того чтобы обернуть мою головку вокруг самого лучшего подхода с этим.  Одна таблица отслеживает состояние сотрудника с любое Кодего они выбирают.  Она записывает дату и время в они делают их таблицу selection.

Another хранит описание имеющихся Кодих.  Оно также хранит дата в то Кодий было обновлено (может также примениться к будучи созданным ему).  Так вы smogли потенциальн иметь такое же Кодего быть повторенным но с по-разному dates.

So я хотел был бы сделать было сделано должна произвести рапорт сообщает правильно Кодего на дата выбор.  В прикрепленном примере, Кодий 2 20-ое августа намеревалось они находилось на проломе.  Но к 23-ему августа, Кодий 2 изменяло к на телефону.  Так на все дни между 20-ое августа и 22-ого августа оно должен сообщить его как на проломе.  После 23rd оно должен сообщить его как на телефоне.  

How это было бы построено в SQL? (Я вклюаю мою слабую и feable попытку по мере того как он не делает работа)
class= " ясное " >
> " codeSnippet " class=
class= " lineNumbers "
class=
1:
2:
3:
>SELECT " class= " id= " codeSnippet962739
= ref.LastUpdate
class= " lastRow
>Attachments " имени " class= class= " значение "
>

class= " fileInfo "
title= " " filename class= " SampleReport.xls (16 KB)  яваскрипт " href= " " attachmentDetails class= (тип архива детали)  
class= " описание "
Таблицы примера и предпологаемое output
class=
>
class=

Ответ : Таблица взгляда вверх SQL при множественные справки основанные на поле даты уточнения

Вы smogли создать календар дней и соединить ваши таблицы к ему
СОЗДАЙТЕ ФУНКЦИЮ [dbo]. [DAY_CALENDAR]
(
      @StartDate TDATETIME,
      @EndDate TDATETIME
)
ВОЗВРАЩЕНИЯ
      ТАБЛИЦА @DYCALENDAR
(
      DATETIME StartDate,
      DATETIME EndDate,
      DATETIME OnDay
)
КАК
НАЧНИТЕ
      ОБЪЯВИТЕ @VARSTARTTIME TDATETIME, @VARENDTIME TDATETIME
      
      установите @varStartTime = DATEADD (dd, 0, DATEDIFF (dd, 0, @StartDate))
      
      пока @varStartTime <>      начинает
            установите @varEndTime = DATEADD (DD, 1, @varStartTime) --закончитесь время
            установите @varRes = @varStartTime
            
            введите в @DYCALENDAR
            значения (@varStartTime, @varEndTime, @varStartTime)
            
            установите @varStartTime = @varEndTime
      конец            
      
      ВОЗВРАЩЕНИЕ
КОНЕЦ
       
Вопрос
ВЫБЕРИТЕ *
ОТ журнала CodeLogging
ВНУТРЕННЕ СОЕДИНИТЕ ref CodeReference НА log.code = ref.code
ВНУТРЕННЕ СОЕДИНИТЕ DAY_CALENDAR (08/01/2010', «08/31/2010») LOGDAYS ДАЛЬШЕ
  (>= LOGDAYS.StartDate log.date и журнал. Дата <� LOGDAYS="">
Другие решения  
  •  Как я добавляю кнопки на форме PDF для того чтобы добавить/извлекаю рядки данных?
  •  Шнур ошибки в блоке задвижки?
  •  сколько вариант сервера SQL на одной машине
  •  Внешний вид 2007 не может архивный файл открытой сети сохраненный
  •  Активно директория DNS записывает вопрос
  •  Отчет о доступа 2010 экспорта к CSV с коллекторами?
  •  Прокладчик OCE 9400 не начинает
  •  как добавить десятичное место в формуле в отчете о кристалла seagate
  •  Windows XP и Мичрософт Оутлоок и проблемы установителя Windows
  •  VB6 к VS2010 - консультации тренировки?
  •  
    programming4us programming4us