Je n'arrive pas à comprendre ce que je fais aujourd'hui - donc votre aide est très appréciée.Requête SQL Server 2005
Tableau Structure
Create Table #trans
(
TransactionId int,
AccountNumber varchar(10),
TransactionAmount money,
TransactionDate DateTime
)
Create Table #payments
(
PaymentId int,
AccountNumber varchar(10),
PaymentAmount money,
PaymentDate
)
Exemple de données
Insert Into #trans
Values (500500 ,'10000001', 10000.00, '2008-10-02')
GO
Insert Into #trans
Values (500501 ,'10000001', 10000.00, '2008-10-02')
GO
Insert Into #trans
Values (500502 ,'10000001', 10000.00, '2008-10-02')
GO
Insert Into #payments
Values (0001,'10000001', 10000.00, '2008-10-02')
GO
Insert Into #payments
Values (0002,'10000001', 10000.00, '2008-10-02')
GO
Insert Into #payments
Values (0003,'10000001', 10000.00, '2008-10-02')
GO
Résultats attendus
Je dois pouvoir faire correspondre les transactions avec les paiements. Donc, fondamentalement, je vais obtenir:
TransactionId PaymentId
500500 0001
500501 0002
500502 0003
La transaction étant appariée sur le numéro de compte, la date de paiement et le montant.
Cela semble vraiment simple, mais je ne peux pas sembler travailler.
Mise à jour
Pour essayer de clarifier ma situation, j'ai une liste des transactions historiques selon le tableau ci-dessus. J'ai un fichier contenant des paiements, encore une fois historique. Je dois faire correspondre les transactions aux paiements dans le fichier.
Pourquoi?
- pour trouver les transactions qui n'existent pas dans le fichier.
- pour créer un "lien" table qui contiendra le TransactionID et PaymentID de sorte qu'à l'avenir toute autre personne interrogeant ces données n'aura pas le même problème.
Lorsqu'il y a un conflit de compte/quantité/date, comme c'est le cas ici, qu'est-ce qui détermine quelle transaction correspond à quel paiement? ID de base de données? – Rup
@rup - cela n'a pas vraiment d'importance quel paymentid est mappé à quel transactionid. Juste tant qu'ils ne sont cartographiés qu'une seule fois et qu'il n'y a pas de doublons. – codingbadger