Я новичок. У меня есть таблица сотрудников с столбцом с указанием даты присоединения, и я хочу получить список сотрудников, которые присоединились за последние 3 месяца. Я понимаю, что мы можем получить текущую дату, используя from_unixtime (unix_timestamp()). Как рассчитать датифф? Есть ли встроенная функция DATEDIFF(), например, в MS SQL? пожалуйста посоветуй!Как рассчитать разницу по времени в улье
ответ
datediff(to_date(String timestamp), to_date(String timestamp))
да датированный; см: https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF
Кстати, я нашел это на Google-поиска "улей DateDiff", это был первый результат;)
Я хотел бы попробовать это первый
select * from employee where month(current_date)-3 = month(joining_date)
как насчет тех, кто присоединился менее 3 месяцев назад? Как насчет тех, кто присоединился в январе - марте? – aviad
, если сегодня возможно, он хочет тех, кто присоединился к апрелю, маршу и feb, аналогично для июня, возможно, апрель и марш –
попытайтесь запустить ваш запрос с current_date = 2015-01-01 и joining_date = 2014-12- 01, что было бы результатом? – aviad
If вам нужно разницу в секундах (т. е. вы сравниваете даты с отметками времени, а не целыми днями), вы можете просто преобразовать две строки даты или времени в формате «ГГГГ-ММ-ДД ЧЧ: ММ: СС» (или указать ваш строковый формат даты явно) с помощью unix_timestamp(), а затем вычесть их из друг друга, чтобы получить разницу в секундах. (А может затем разделить на 60,0, чтобы получить минут, или 3600,0, чтобы получить часы и т.д.)
Пример:
UNIX_TIMESTAMP('2017-12-05 10:01:30') - UNIX_TIMESTAMP('2017-12-05 10:00:00') AS time_diff -- This will return 90 (seconds). Unix_timestamp converts string dates into BIGINTs.
Более того, что вы можете сделать с UNIX_TIMESTAMP() здесь, в том числе и как конвертировать строки с разным форматированием даты: https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-DateFunctions
- 1. Как рассчитать разницу во времени?
- 2. Как рассчитать разницу во времени
- 3. Как рассчитать разницу во времени
- 4. Как рассчитать разницу во времени и времени?
- 5. Рассчитать разницу во времени по времени в Excel
- 6. Как рассчитать разницу во времени в VBA?
- 7. Как рассчитать разницу во времени в java?
- 8. Как рассчитать разницу во времени в AngularJS?
- 9. Как рассчитать разницу во времени в PHP
- 10. Как рассчитать разницу во времени в R?
- 11. Как рассчитать разницу во времени в MySQL?
- 12. Как рассчитать разницу во времени в C++
- 13. Рассчитать разницу во времени | строки
- 14. Как рассчитать разницу по дате?
- 15. чтобы рассчитать разницу во времени
- 16. Как получить среднюю разницу метки времени в улье
- 17. Как рассчитать медиану в улье
- 18. Hive: Как рассчитать разницу во времени
- 19. Как рассчитать разницу во времени с NSDateFormatter
- 20. php рассчитать разницу во времени в процентах
- 21. Рассчитать разницу во времени в андроида
- 22. Рассчитать разницу во времени в минутах
- 23. Рассчитать разницу во времени с помощью TimeSpan
- 24. Рассчитать разницу по дате в R
- 25. Как рассчитать разницу во времени между отметками времени unix?
- 26. PHP Рассчитать разницу во времени 24 часов
- 27. Как рассчитать разницу во времени в PHP и сохранить разницу во времени в базе данных mysql
- 28. Рассчитать разницу во времени и использовать дни
- 29. Рассчитать разницу во времени между двумя EditText
- 30. Ruby: Как правильно рассчитать разницу по дате?
Спасибо за ответ. В Руководстве по языку указано, что функция датифф вычисляет разницу между типами строк. Он также работает для типа Timestamp? – Holmes
Не знаю, я никогда не использовал тип timestamp, я всегда использую строку для столбцов timestamp. Если это не сработает, просто введите столбец timestamp в строку (или оставьте его как строку в первую очередь). – maxymoo