2016-01-07 3 views
-3

У меня есть вопрос к вам,Looping в SQL Server с помощью Дата

Мне нужен сценарий, связанному с моим проектом, она должна быть,

Таблица Table_Day содержит все даты 2016 года (то есть, 20160101 , 20160102, ...)

Для каждого дня я должен вставить 6 персональных файлов.

Как это

'date_id' 'personal_id' 
“20160101” “1001”,“20160101” “1002”,“20160101” “1003”,“20160101” “1004”,“20160101” “1005”,“20160101” “1006”--for example 

“20160102” “1001” 
“20160102” “1002” 
“20160102” “1003” 
“20160102” “1004” 
“20160102” “1005” 
“20160102” “1006” 

Я хочу, чтобы вставить эти данные до конца 2016 (дата ссылки из Table_day).

+6

Спасибо, что сообщили нам о ваших требованиях. Теперь, что мешает вам их реализовать? –

ответ

0

Вы можете использовать приведенный ниже запрос к датам цикла и получить домашнее задание сделано:

 declare @firstofmonth as smalldatetime 
     declare @endofmonth as smalldatetime 

     --Set the inital month to loop 
     set @firstofmonth = '01/01/2016' 
     set @endofmonth = '12/31/2016' 

     WHILE @firstofmonth >= '01/01/2016' --This would be the condition to end the loop 

     Begin 
---Check here if dates exist in dates table and do insert 


     Insert into Table_Day (blah blah black sheep) 

     --Increment Date 
     SET @firstofmonth = DateAdd(m,1,@firstofmonth) 
     SET @endofmonth = DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@firstofmonth())+1,0)) 

     End 

Это был первый стек переполнения результат, который пришел, когда я искал looping dates in sql

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

Смежные вопросы