2012-02-15 4 views
0

Bonjour j'ai besoin d'aide avec cette requête. Im essayant de sélectionner tous les messages qui appartiennent à deux utilisateurs en utilisant leur UserId. Je veux retourner une variable pour savoir si le CurrentUserId est le récepteur ou l'expéditeur de chaque message.Sql Sélectionnez le numéro


Structure de la table:

Nom de la table: Messages

noms de colonne:

  • SenderUserId (l'identifiant de l'utilisateur qui a envoyé le message)
  • ReceiverUserId (L'ID de l'utilisateur le message e a été envoyé à)
  • Message (Peut contenir le message)
  • SentDate (Lorsque le message a été envoyé)

Exemple de résultat attendu:

message ---- ----------------------- SentDate ------------------------ ------ FromMe


Bonjour l'utilisateur -------------------------- 23:45, 16/2/2012 ---------- ------------ ---- vrai


la requête en ce moment:

SELECT Message, SentDate FROM Messages 
WHERE [email protected] AND [email protected] 
OR [email protected] AND [email protected] 

donc ce que je veux essentiellement à faire est que je veux revenir tous les messages que ces utilisateurs ont envoyés les uns aux autres, je veux aussi savoir avec un booléen si le @CurrentUser est l'expéditeur du récepteur de chaque message. True si le message a été envoyé à partir de @CurrentUser et False si le message a été envoyé par @OtherUser. Merci

Répondre

0

Si vous n'avez pas besoin d'utiliser la procédure stockée pour obtenir des données de SQL, je vous conseille de prendre les données dont vous avez besoin et ensuite faire toutes les vérifications nécessaires dans le code begind. En faisant cela, toutes vos règles et calculs seront en 1 place (BLL idéalement).

Espérons que ça aide.