Should this be a foreign key? I'm working on a school project and I need some help.

I want to create three tables which should contain these fields:

User
UserID (AI, PK),
UserEmail,
UserPassword 

WorkGroupMember
GroupID(PK, FK WorkGroup)
UserID (PK, FK User)

WorkGroup
GroupID (AI, PK),
GroupFacilitator,
GroupName



The question is, GroupFacilitator in WorkGroup is actually UserID, can or should it be a foreign key? 

Thank You
First you should clarify the relationships between your entities by asking these questions:


Can a facilitator of a group be a user that is not a member of that group?
Or a facilitator must always be a member of that group?
Do groups always have a facilitator? (your design indicates: yes)
Does every group have one facilitator only? (your design indicates: yes)
Or some groups may have more than one?


If the answer to the first question is "Yes", then the foreign key constraint should be referencing User (and you have no circular path, only multiple paths in your design.)

If the answer is "No", then the foreign key constraint should be referencing WorkGroupMember, with a composite foreign key (and then you have a circular path):

FOREIGN KEY (GroupID, GroupFacilitatorID)
  REFERENCES WorkGroupMember (GroupID, UserID)


The circular design makes it difficult to be implemented in many DBMS (because the constaints need to be DEFERRABLE and that is not implemented in many of them.)

Another solution would be (as proposed by Steve Pettifer in his answer), to add a IsGroupFacilitator column in the WorkGroupMember and a partial (filtered) unique constraint, to enforce that each group have at most one facilitator:

UNIQUE (GroupID) 
  WHERE (IsGroupFacilitator = 1)


This way however, you cannot enforce that all groups have a facilitator (not with constraints at least, you can still enforce it by taking care of it in the INSERT/UPDATE/DELETE statements)