Сортировка даты по дате и по часам

0

У меня есть таблица msql, которая содержит данные каждый час каждый день, поэтому каждая дата вводится 24 раза, а затем поле часа, как показано ниже...

Как получить информацию между daterange?

Вот что у меня есть, но я думаю, что время останавливает его от работы...

$sql = "SELECT * FROM report WHERE date BETWEEN '$start' AND '$end'";

Привет, я хочу получить информацию по дате...

идентификатор устройства | Дата | Время | Мощность | Вольт | Текущий |

1         10/15/2010    21:00:00         0            220          100
1         10/15/2010    22:00:00         0            220          100
1         10/15/2010    23:00:00         0            220          100
1         10/16/2010    00:00:00         0            220          100
1         10/16/2010    01:00:00         0            220          100
1         10/16/2010    02:00:00         0            220          100
1         10/16/2010    03:00:00         0            220          100
1         10/16/2010    04:00:00         0            220          100
1         10/16/2010    05:00:00       245            220          100
1         10/16/2010    06:00:00       360            220          100
1         10/16/2010    07:00:00       596            220          100
1         10/16/2010    08:00:00      1567            220          100
1         10/16/2010    09:00:00      1568            220          100
1         10/16/2010    10:00:00      1598            220          100
1         10/16/2010    11:00:00      1642            220          100
1         10/16/2010    12:00:00      1658            220          100
1         10/16/2010    13:00:00      1664            220          100
1         10/16/2010    14:00:00      1598            220          100
1         10/16/2010    15:00:00      1527            220          100
1         10/16/2010    16:00:00       980            220          100
1         10/16/2010    17:00:00       410            220          100
1         10/16/2010    18:00:00       208            220          100
1         10/16/2010    19:00:00         0            220          100
1         10/16/2010    20:00:00         0            220          100
1         10/16/2010    21:00:00         0            220          100
1         10/16/2010    22:00:00         0            220          100
1         10/16/2010    23:00:00         0            220          100
1         10/17/2010    00:00:00         0            220          100
1         10/17/2010    01:00:00         0            220          100
1         10/17/2010    02:00:00         0            220          100

Дата DATE, поле Time TIME, Power, Volt и Current FLOAT.

$start и $end являются датами датпикера

    $start = (isset($_POST['start1'])) ? date("Y-m-d",strtotime($_POST['start1'])) : date("Y-m-d");

$end   = (isset($_POST['end1'])) ? date("Y-m-d",strtotime($_POST['end1'])) : date("Y-m-d");
  • 0
    какие типы есть в ваших полях Date и Time? Какие значения содержат переменные $ start и $ end?
  • 0
    какой тип поля даты?
Показать ещё 1 комментарий
Теги:

2 ответа

0

Вам нужно удалить одиночные (') кавычки из переменных $start и $end.

Используя одиночные кавычки, вы делаете свои переменные строкой.

Просто используйте

$sql = "SELECT * FROM report WHERE date BETWEEN $start AND $end";

В вашей таблице mysql дата находится в формате m-D-Y, тогда как в вашем php-коде его Y-m-d. Формат даты в ur php-коде должен быть похож на ваш формат даты mysql.

0

Нет, если вы хотите, чтобы все точки со всех дат, вы можете игнорировать ваш столбец времени, и ваш запрос будет работать нормально.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню