как получить нулевое значение из функции mysql any_value ()

0

Я хочу выбрать самые новые данные из mysql, поэтому я запускаю ниже sql, но я получаю next_visit_time, не соответствующий реальному значению строки max create_time. Поэтому я проверяю данные, и я обнаружил, что самые новые данные равны null, поэтому гостевой Mysql не получает нулевого значения при использовании функции any_value. Как получить значение any_value(), если значение равно null?

SELECT
    student_id,
    max(created_time) as created_time,
    any_value(next_visit_time) as next_visit_time 
FROM
    student_visit_record
GROUP BY
    student_id 
  • 0
    Вопрос, почему вы используете ANY_VALUE() ? Потому что next_visit_time не похоже на столбец, содержащий те же данные для самой записи для сгруппированного student_id .. ANY_VALUE() имеет смысл, только если вы знаете, что все значения в этом столбце для группы одинаковы ..
  • 0
    next_visit_time не соответствует реальному значению строки max create_time - конечно, нет. Зачем это?
Показать ещё 5 комментариев
Теги:

1 ответ

0
SELECT DISTINCT
  student_id,
  max(created_time),
  next_visit_time 
FROM
  student_visit_record
WHERE
  next_visit_time IS NOT NULL OR next_visit_time IS NULL
GROUP BY
  student_id

Может быть, это то, что вы ищете случайно? См. Скрипт SQL

  • 0
    Я думаю, что это не так. Но спасибо за ваш ответ.
  • 0
    Разве вам не нужны новейшие данные ваших записей, даже если next_visit_time равен нулю? То, что я делаю, возвращает ваши строки независимо от того, имеет ли значение next_visit_time значение или нет. Или что ты тогда ищешь?
Показать ещё 4 комментария

Ещё вопросы

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