Попробуйте составить группы в запросах такого типа
select * from usr_booking where shop_id='21' AND ((start_time between '10:10:00' and '11:01:00') OR (end_time between '10:10:00' and '11:01:00'))
Добавьте дополнительные скобки, чтобы создать группы.
Если Вы хотите управлять путями Windows на Linux, необходимо использовать ntpath модуль (это - модуль, который импортируется, как os.path на окнах - posixpath импортируется как os.path на Linux),
>>> import ntpath
>>> filepath = r"c:\ttemp\FILEPA~1.EXE"
>>> print ntpath.basename(filepath)
FILEPA~1.EXE
>>> print ntpath.splitdrive(filepath)
('c:', '\\ttemp\\FILEPA~1.EXE')
См. документацию здесь, конкретно:
splitdrive (p) Разделение путь в диск и путь. На Posix диск всегда пуст.
Таким образом, это не будет работать над полем Linux.
От a os.path
документация:
os.path.splitdrive (путь)
Разделите путь пути к паре (диск, хвост), где диск является или спецификацией диска или пустой строкой. В системах, которые не используют спецификации диска, диск всегда будет пустой строкой. Во всех случаях диск + хвост совпадет с путем.
Если Вы выполняющий это на Unix, это не будет использовать спецификации диска, следовательно - то диск будет пустой строкой.
Если Вы хотите решить пути окон на какой-либо платформе, можно просто использовать простой regexp:
import re
(drive, tail) = re.compile('([a-zA-Z]\:){0,1}(.*)').match(filepath).groups()
drive
будет буква диска, сопровождаемая :
(например. c:
, u:
) или None
, и tail
целый отдых :)