Erreur d'identificateur de plusieurs parties SQL JOIN

J'ai deux tables, les Customers [CustomerID, Email] et l'histoire [CustomerID, BikeID, Checkout, StationIDout, Checkin, StationIDin].

Étant donné l'adresse e-mail d'un client, je souhaite interroger la table History et get toutes les lignes contenant le code CustomerID correspondant à cet e-mail où le vélo a été renvoyé ( WHERE Checkin IS NOT NULL ), en commandant la date d' Checkin plus récente.

J'ai essayé la requête suivante mais j'obtiens l'erreur:

"L'identifiant en plusieurs parties" [email protected] "ne pouvait pas être lié."

[email protected] existe dans la database. J'ai vu d'autres messages expliquant que c'est une faute de frappe ou qu'une colonne est mal sélectionnée, mais je ne vois pas ma requête en faire. Y a-t-il autre chose qui me manque?

 email = "[email protected]"; sql = ssortingng.Format(@" SELECT BikeID, Checkout, StationIDout, Checkin, StationIDin FROM History INNER JOIN Customers ON Customers.CustomerID = History.CustomerID AND Customers.Email = {0} WHERE Checkin IS NOT NULL ORDER BY Checkin DESC", email); 

Guillemets de string manquants:

  sql = ssortingng.Format(@" SELECT BikeID, Checkout, StationIDout, Checkin, StationIDin FROM History INNER JOIN Customers ON Customers.CustomerID = History.CustomerID AND Customers.Email = '{0}' ^ ^ WHERE Checkin IS NOT NULL ORDER BY Checkin DESC", email); 

Mais plutôt que d'utiliser la concat ou le format, utilisez les parameters