NKonsul :
I'm using java PreparedStatement
to set two parameters in a query begin time and end time. But in my query, I need to use it in two places. Can I make some query variables or make my request shorter?
SELECT * FROM publicutilities.orders
WHERE (works_begin between '2019-05-26 09:00:00' and '2019-05-26 14:00:00' OR works_end between '2019-05-26 09:00:00' and '2019-05-26 14:00:00')
Something like this:
SELECT * FROM publicutilities.orders
VARIABLE begin_time = ?
VARIABLE end_time = ?
WHERE (works_begin between begin_time and end_time OR works_end between begin_time and end_time)
Bojmaliev :
Following this tutorial http://www.mysqltutorial.org/mysql-variables/
I think your SQL query should look like:
SET @begin_time := '2013-01-17 00:00:00';
SET @end_time := '2013-01-17 00:00:00';
SELECT * FROM publicutilities.orders
WHERE (works_begin between @begin_time and @end_time OR works_end between @begin_time and @end_time)
I tried it on my mysql server and it works. Hope it does on yours too.