как реализовать добавить выражение для даты в Drupal 7

Когда я пытаюсь использовать метку времени в формате времени в выражении. Я получил ошибку

Например

$query->addExpression('date("H:i:s","dept_timestamp")','time_val');

0

Решение

Я думаю, проблема в том, что вы поместили функцию PHP в addExpression. Он передает ваше выражение прямо в базу данных, поэтому вы захотите использовать функцию форматирования даты, которую ваша БД поймет. Предполагая, что вы используете MySQL в качестве бэкэнда, вам нужно что-то вроде этого:

$query->addExpression('from_unixtime("dept_timestamp", "%h:%i:%s")', 'time_val');

Вот полный пример, который без веской причины объединяет таблицу узлов и таблицу field_data_body:

$query = db_select('node', 'n')
->fields('n', array('nid', 'title'));
$query->join('field_data_body', 'b', 'n.nid = b.entity_id');
$query->fields('b', array('body_value'));
$query->addExpression("from_unixtime(created, '%h:%i:%s')", 'my_timestamp');
$result = $query->execute();
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]