Nano Hash - криптовалюты, майнинг, программирование

Функция DATEDIFF на сервере SQL возвращает нулевое значение, когда я использую переменные

Я пытаюсь получить общее количество минут между временем начала и временем окончания. Эти данные находятся в той же таблице, в том же столбце, и я установил переменную для возврата нужных мне значений.

Пока это работает нормально. Теперь проблема возникает, когда я использую DATEDIFF с переменными, поскольку он возвращает NULL:

DECLARE @hol datetime

SET @hol = (
    SELECT fecha_Registro  
    FROM Registro  
    WHERE id_Registro = 4  
        AND id_Tipo_Registro = 2
);  

SELECT @hol as varText 

DECLARE @bye DATETIME 

SET @hol = (
    SELECT fecha_Registro  
    FROM Registro  
    WHERE id_Registro = 3  
        AND id_Tipo_Registro = 1
);  

SELECT @hol as varText2  

SELECT DATEDIFF(MI, @bye, @hol) as total_minutos 

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

13.11.2019

  • Покажите нам свою попытку кода. 13.11.2019
  • Не беспокойтесь об изображении, большинство людей здесь хотят форматированный текст вместо изображений. 13.11.2019
  • Не прикрепляйте изображение с кодом. Вместо этого отредактируйте свой вопрос, чтобы включить код в виде форматированного текста. 13.11.2019
  • Изображения нельзя копировать, тестировать и выполнять. Разместите код в самом вопросе. В противном случае людям придется перепечатывать все, что есть на изображении, чтобы воспроизвести проблему. Большинство даже не будет беспокоиться 13.11.2019
  • Как мы можем видеть??? Без выборочных данных мы ничего не увидим. 13.11.2019
  • Не за что, я нашел ошибку :) 13.11.2019
  • @AndreaCastle Итак, если это было то, что сказал Михал, пожалуйста, примите этот ответ, или если это было что-то другое, опубликуйте и примите свой собственный ответ. 13.11.2019

Ответы:


1

Вы объявляете переменную @bye, которая нигде не назначена. Таким образом, он получает значение по умолчанию NULL, поэтому DATEDIFF(MI, @bye, @hol) также оценивается как null.

Еще одна возможность заключается в том, что запрос

select fecha_Registro  
from Registro  
where id_Registro = 3  
and id_Tipo_Registro = 1

возвращает NULL.

13.11.2019
  • Вы правы, Михал! Большое спасибо! Я заметил, и это была основная оооочень основная ошибка с моей стороны. Думаю, 4 утра — не лучшее время для этого. 13.11.2019
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..