I inherited an interesting table structure. This table structure looks like the following:
GroupTable
- ID
- Name
- Description
GroupItem
- ID
- GroupID
- Name
- CreatedBy
- CreationDate
I need to get the three most recent GroupItem elements created by a specific user. The twist comes in with a requirement associated with the GroupID. The three GroupItem elements I retrieve must have at least one other GroupItem element with the same GroupID.
In other words, I am trying to retrieve the three most recent GroupTables that have at least two GroupItem elements where at least one of those GroupItem elements have been created by a specific user.
I have no clue how to accomplish this in SQL. I am using SQL Server 2008 and I keep coming up short.
As Tom H. was way faster in constructing the solution for your first definition I will do the second one :)
Main difference is that this query groups by GroupTable so there can be no case when the same table is returned more than once (which happens in Tom H. answer/is required in the first definition of the problem).