Je règle le planning du travail quotidiennement. Lorsque je vérifie les enregistrements le lendemain, les dossiers n’ont pas été complètement déplacés un jour. Je ne sais pas pourquoi.
Voici ma requête
INSERT INTO [HQWebMatajer].[dbo].[F_ItemDailySalesParent]
(
[ItemID]
,[StoreID]
,[ItemLookupCode]
,[DepartmentID]
,[CategoryID]
,[SupplierID]
,[Time]
,[Qty]
,[ExtendedPrice]
,[ExtendedCost]
)
SELECT
[ItemID]
,[StoreID]
,[ItemLookupCode]
,[DepartmentID]
,[CategoryID]
,[SupplierID]
,[Time]
,[Qty]
,[ExtendedPrice]
,[ExtendedCost]
FROM
[HQMatajer].[dbo].[JC_ItemDailySalesParent]
where time=convert(Date,getdate()-1)
Nombre total d'enregistrements trouvés sur [JC_ItemDailySalesParent] = 21027 et total des enregistrements sur [F_ItemDailySalesParent] = 18741 le 06 mars 2017
Si vous pensez que je pourrais avoir manqué une colonne ou autre chose! .. Alors je vais exécuter la même requête en changeant où condition à
where time=convert(Date,getdate())
. Ensuite, il exécute l'enregistrement complet sans manquer.Remarque: Les deux tableaux sont des horaires de travail.
[JC_ItemDailySalesParent]
la table fonctionnera à 2 heures du matin.F_ItemDailySalesParent
courra tôt le matin à 6 heures.
Ne me demandez pas pourquoi deux tableaux avec le même enregistrement. C'est pour des raisons différentes.
Merci,
Réponses:
0 pour la réponse № 1Toujours essayer d'avoir un identifiant unique dans la table. En supposant que la combinaison de ItemID, StoreID, ItemLookupCode, DepartmentID, CategoryID, SupplierID, Time est unique:
INSERT INTO HQWebMatajer.dbo.F_ItemDailySalesParent
( ItemID
, StoreID
, ItemLookupCode
, DepartmentID
, CategoryID
, SupplierID
, Time
, Qty
, ExtendedPrice
, ExtendedCost
)
SELECT ItemID
, StoreID
, ItemLookupCode
, DepartmentID
, CategoryID
, SupplierID
, Time
, Qty
, ExtendedPrice
, ExtendedCost
FROM HQMatajer.dbo.JC_ItemDailySalesParent src
LEFT JOIN HQWebMatajer.dbo.F_ItemDailySalesParent tgt
ON tgt.ItemID = src.ItemID
AND tgt.StoreID = src.StoreID
AND tgt.ItemLookupCode = src.ItemLookupCode
AND tgt.DepartmentID = src.DepartmentID
AND tgt.CategoryID = src.CategoryID
AND tgt.SupplierID = src.SupplierID
AND tgt.Time = src.Time
WHERE tgt.ItemID IS NULL;