Вставить данные из таблицы - PullRequest
1 голос
/ 10 мая 2010

У меня есть таблица, в которой указано количество комментариев с определенного сайта, например:

Date                        Site         Comments         Total
---------------------------------------------------------------
2010-04-01 00:00:00.000      1              5               5
2010-04-01 00:00:00.000      2              8               13
2010-04-01 00:00:00.000      4              2               7
2010-04-01 00:00:00.000      7              13              13
2010-04-01 00:00:00.000      9              1               2

У меня есть другая таблица, в которой перечислены ВСЕ сайты, например, от 1 до 10

Site
-----
1
2
...
9
10

Используя следующий код, я могу узнать, на каких сайтах отсутствуют записи за предыдущий месяц:

SELECT s.site
from tbl_Sites s
EXCEPT
SELECT c.site
from tbl_Comments c
WHERE c.[Date] = DATEADD(mm, DATEDIFF(mm, 0, GetDate()) -1,0)

Производство:

site
-----
3
5
6
8
10

Я хотел бы иметь возможность вставить отсутствующие сайты, перечисленные в моем запросе, в таблицу комментариев с некоторыми значениями по умолчанию, т.е. 0

Date                        Site         Comments         Total
---------------------------------------------------------------
2010-04-01 00:00:00.000      3              0               0
2010-04-01 00:00:00.000      5              0               0
2010-04-01 00:00:00.000      6              0               0
2010-04-01 00:00:00.000      8              0               0
2010-04-01 00:00:00.000      10             0               0

вопрос в том, как мне обновить / вставить таблицу / значения?

ура

Lee

Ответы [ 2 ]

2 голосов
/ 10 мая 2010
INSERT INTO CommentTable (Date, Site, Comments, Total)
SELECT '2010-04-01 00:00:00.000', Site, 0, 0
FROM SiteTable
WHERE Site NOT IN
    (SELECT DISTINCT Site FROM CommmentTable
     WHERE [Date] = DATEADD(mm, DATEDIFF(mm, 0, GetDate()) -1,0))
0 голосов
/ 10 мая 2010

Левое присоединение с сайта к вашему комментарию должно сделать работу, которую я предполагаю

По крайней мере, если бы я понял ваше намерение

РЕДАКТИРОВАТЬ: Sry думал, что вы хотите выбрать все сайты с этими комментариями

...