2010-05-10 18 views
1

J'ai un tableau qui répertorie nombre de commentaires d'un site particulier, comme les suivantes:Insérer des données à partir d'une table

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 

je une autre table qui répertorie tous les sites, par exemple de 1 à 10

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

en utilisant le code suivant je peux savoir quels sites sont entrées manquantes pour le mois précédent:

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 

Je voudrais être en mesure d'insérer des sites manquants qui est répertorié de ma requête dans la table des commentaires avec des valeurs par défaut, à savoir « 0 de

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 

la question est, Comment ai-je mis à jour/insérer la table/les valeurs?

acclamations,

Lee

Répondre

2
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

a travaillé comme ac nuire. – Icementhols

0

A gauche Joignez-vous du site à votre commenttable devrait faire le travail que je suppose que

Au moins si je l'ai fait Unterstand votre intention

EDIT: Sry vous pensé veux sélectionner tous les sites avec ces commentaires