title: How do I convert this SQL to Linq?
body: <p>What would this SQL look like in Linq?</p>
  <p>You can see the SQL statement that I want to use, I am pretty new to Linq:</p>
  <pre class="lang-sql prettyprint-override"><code>SELECT user_id
  FROM profiles
  LEFT JOIN interests ON profiles.id = interests.profile_id
  WHERE interest IN ('Shopping', 'Art') 
    AND Sex IN ('Man', 'Woman') 
    AND user_id NOT IN (SELECT user_1 FROM matches) 
    AND user_id != 84
  GROUP BY user_id
  ORDER BY COUNT(user_id) DESC;
  </code></pre>
  <p>Beneath you can see the different models, All the models have an id from modelbase</p>
  <p>Profile model:</p>
  <pre class="lang-cs prettyprint-override"><code>namespace Sparks.Presentation.Entities
  {
      public partial class Profile: ModelBase
      {
          public Profile()
          {
              Interests = new HashSet&lt;Interest&gt;();
          }
  
          public int UserId { get; set; }
          public string Name { get; set; }
          public string Picture { get; set; }
          public string Birthdate { get; set; }
          public string Sex { get; set; }
          public string Orientation { get; set; }
  
          public virtual User User { get; set; }
          public virtual ICollection&lt;Interest&gt; Interests { get; set; }
  
          [NotMapped]
          public IFormFile FormFile { set; get; }
      }
  }
  </code></pre>
  <p>Interest model:</p>
  <pre class="lang-cs prettyprint-override"><code>namespace Sparks.Presentation.Entities
  {
      public partial class Interest: ModelBase
      {
          public int ProfileId { get; set; }
          public string InterestName { get; set; }
  
          public virtual Profile Profile { get; set; }
      }
  }
  </code></pre>
  <p>Matchmodel:</p>
  <pre class="lang-cs prettyprint-override"><code>namespace Sparks.Presentation.Entities
  {
      public partial class Match: ModelBase
      {
          public Match()
          {
              Chats = new HashSet&lt;Chat&gt;();
          }
  
          public int User1 { get; set; }
          public int User2 { get; set; }
          public bool Matchstatus { get; set; }
          public bool Matchmade { get; set; }
          public DateTime CreatedOn { get; set; }
  
          public virtual User User1Navigation { get; set; }
          public virtual User User2Navigation { get; set; }
          public virtual ICollection&lt;Chat&gt; Chats { get; set; }
      }
  }
  </code></pre>
  <p>Hope someone can help me out?</p>