2011-03-15 6 views
0

Bonjour Je dois pouvoir rechercher un enregistrement qui date d'un an, puis le supprimer. J'ai ce script qui me permet de supprimer l'enregistrement d'une table, basé sur une date donnée par une autre table, mais j'ai besoin d'ajouter du code pour que je puisse supprimer un enregistrement d'une table différente liée à CardID. La table dont j'ai besoin de supprimer est table11 et la clé primaire est CardID.Comment supprimer deux enregistrements de deux tables?

Je pense que j'ai besoin d'une jointure à gauche, mais je ne suis pas sûr de la façon de s'y prendre.

DECLARE @deleted TABLE (Card INT) 

INSERT INTO @deleted 
SELECT Card FROM table9 
WHERE recordstatus = 4 


DELETE table9 
FROM @deleted d, table51 

WHERE table51.ActionString LIKE '%' + CAST(d.card AS VARCHAR(20))+ '%' 
AND table51.AuditDate <= (SELECT CONVERT(VARCHAR(8),today,112) FROM(SELECT DATEADD(YEAR,-1,GETDATE()) AS today)aa) 
AND table09.Card = d.card 

Merci d'avance, je espère que vous pouvez aider.

+0

N'UTILISEZ PLUS JAMAIS cette syntaxe implicite. c'est une syntaxe horrible (jointures accidentelles, difficile à maintenir, etc.) qui a été dépassée pendant près de 20 ans, apprendre à écrire des jointures explicites. – HLGEM

+0

Je pense que quiconque est déprécié est dur. Sa syntaxe est mauvaise, mais c'est pourquoi il demande ici conseil. +1 – Matthew

+0

je vous remercie beaucoup, je suis seulement en train d'apprendre, juste besoin de savoir comment supprimer l'enregistrement dans le tableau suivant, merci matthew – Leigh

Répondre

0

même que this question

modifier: comme @HLGEM mentionné, la clause WHERE va où vous vous attendez à aller, après la jointure.

+0

merci, je l'ai vu, mais où ajouterais-je dans mon Statements à obtenir les résultats dont j'ai besoin – Leigh

+0

@leigh, la clause where va toujours au même endroit où la clause where va toujours, après les jointures et avant le groupe by si vous en avez une. Dans le lien, faites attention à la partie transaction, c'est important. – HLGEM

Questions connexes