следующий оператор sql выдает то, что должен.Минимальное значение в определенный период времени.
select value, datetime from Schuppen
where (value = (select min(value) from Schuppen
where (measure = 'temp')
and datetime between '2018-11-01 00:00:00' and '2018-11-02 00:00:00'))
and datetime between '2018-11-01 00:00:00' and '2018-11-02 00:00:00';
Когда вместо жестко закодированных дат я использую переменную, оператор зависает.
set @startdate = cast('2018-11-01 00:00:00' as datetime);
select value, datetime from Schuppen
where (value = (select min(value) from Schuppen
where (measure = 'temp')
and datetime between @startdate and '2018-11-02 00:00:00'))
and datetime between '2018-11-01 00:00:00' and '2018-11-02 00:00:00';
Интересно, почему этот оператор не работаетпротив моей версии maria db 10.1.26-MariaDB-0 + deb9u1.
Пробовал через консоль mysql.
mysql --user=XXXX --password=XXXX Outdoor-Air
...
Your MariaDB connection id is 194
Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1
...
MariaDB [Outdoor-Air]> set @startdate = cast('2018-11-01 00:00:00' as datetime);
Query OK, 0 rows affected (0.00 sec)
MariaDB [Outdoor-Air]> select @startdate;
+---------------------+
| @startdate |
+---------------------+
| 2018-11-01 00:00:00 |
+---------------------+
1 row in set (0.01 sec)
MariaDB [Outdoor-Air]> select value, datetime from Schuppen where (value = (select min(value) from Schuppen where (measure = 'temp') and datetime between @startdate and '2018-11-02 00:00:00')) and datetime between '2018-11-01 00:00:00' and '2018-11-02 00:00:00';
Теперь оператор зависает.