WordPress Meta Query Null Values Order

I have a custom WP_Query to sort some events by two meta fields – date and time.

Most events will have both a date and time, but we might occasionally have events that fall in to one of two other scenarios:

An event with no date or time (want this to appear last)
An event with a date but no time (this sorts by date correctly, but events with no time appear first, we want these to appear last)
Is there a good way to achieve this without the need for additional meta fields?