質問

私はテーブルを持っている以下のような特定のサイトからのコメントのリスト番号:

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

問題は、どのように私は、テーブル/値を挿入/更新でしたか?

歓声、

リー

役に立ちましたか?

解決

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))

他のヒント

A左は私が

推測する作業を行う必要があり、あなたのcommenttableにサイトから参加

私がした場合、少なくともunterstandあなたの意図

EDIT:SRYは、あなたがそれらのコメントと、すべてのサイトを選択したいと思った。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top