SELECT count(a) FROM Entity a WHERE
(a.timeFrom <= a.timeTo AND :start_time BETWEEN a.timeFrom AND a.timeTo)
OR (a.timeTo >= a.timeFrom AND :end_time NOT BETWEEN a.timeTo AND a.timeFrom)
AND a.confirm = 1
Note: I need to check the availability of time slots between two time field on getSql();
it's returning something like this
SELECT count(m0_.id) AS sclr_0 FROM table_name m0_
WHERE (m0_.time_from = m0_.time_from
AND ? NOT BETWEEN m0_.time_to
AND m0_.time_from)
AND m0_.confirm = 1
Its escaping the arguments after OR
operator