"Not possible" is a valid answer ...

Given a table of fields (Not real field names):

`DateTime, Message, User`

Given query (to return all sets):

`SELECT * FROM tbl WHERE User = 'mfamoso' ORDER BY [DateTime] DESC`

Given Data in a set (3 expected records):

```
+-------------------------+------------------------------------------------------------------------------------------+---------+
|        DateTime         |                                         Message                                          |  User   |
+-------------------------+------------------------------------------------------------------------------------------+---------+
| 2019-03-11 12:55:00.097 | {"V":"1.0.0","In":"Program.Main()","E":"","D":"Exporting...."}                           | mfamoso |
| 2019-03-11 12:55:00.270 | {"V":"1.0.0","In":"Program.Main()","E":"","D":"PreExportImprintHeader ran successfully"} | mfamoso |
| 2019-03-11 12:55:08.543 | {"V":"1.0.0","In":"Program.Main()","E":"","D":"CleanUp ran successfully"}                | mfamoso |
+-------------------------+------------------------------------------------------------------------------------------+---------+

```

Question: Is there a way to get the following query results if part of the set is missing (record "CleanUp ran successfully" is missing), for example:

I can have multiple sets if the main query runs successfully since the main query runs as a service every 10 minutes. All sets should have 3 records. I need a query that will return the sets that are missing all 3 records if something doesn't run.

```
+-------------------------+------------------------------------------------------------------------------------------+---------+
|        DateTime         |                                         Message                                          |  User   |
+-------------------------+------------------------------------------------------------------------------------------+---------+
| 2019-03-11 12:55:00.097 | {"V":"1.0.0","In":"Program.Main()","E":"","D":"Exporting...."}                           | mfamoso |
| 2019-03-11 12:55:00.270 | {"V":"1.0.0","In":"Program.Main()","E":"","D":"PreExportImprintHeader ran successfully"} | mfamoso |
+-------------------------+------------------------------------------------------------------------------------------+---------+

```

I'm guessing the query would use a count to ensure 3 records, if there aren't 3 then show them - but then how to determine they are part of a set? The process that creates the records takes approximately 10 seconds to run and is run every 10 minutes. This may require a stored procedure.

The `DateTime` changes, `Message` does not.