Frage

Ich habe eine Tabelle, dass die Listen Anzahl Kommentare von einer bestimmten Website wie folgt aus:

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

Ich habe eine andere Tabelle, dass listet alle Websites, zum Beispiel von 1 bis 10

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

Mit dem folgenden Code i herausfinden kann, welche Websites Einträge für den vorangegangenen Monat fehlen:

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)

Producing:

site
-----
3
5
6
8
10

Ich möchte in der Lage sein, die fehlenden Websites einzufügen, die aus meiner Anfrage in die Kommentar Tabelle mit einigen Standardwerten aufgeführt wird, das heißt ‚0-en

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

Die Frage ist, wie ich habe Update / Insert der Tabelle / Werte?

prost,

Lee

War es hilfreich?

Lösung

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

Andere Tipps

A LEFT JOIN von Standort zu Ihrem commenttable sollte die Arbeit machen ich denke

Mindestens wenn ich es täte unterstand Ihre Absicht

EDIT: Sry haben Sie alle Websites mit diesen Kommentaren wählen Wanna

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top