Найдено результатов: 22

Как я могу вычислить чей-то возраст в C#?

Учитывая, что DateTime представляет собой день рождения человека, как я могу рассчитать его возраст в годах?

c#   .net   datetime    

1323   25   16:03, 1st July, 2020


Вычислить относительное время в C#

Учитывая конкретное значение DateTime , как я могу отобразить относительное время, например:

  • 2 часа назад
  • 3 дня назад
  • месяц назад

c#   datetime   time   datediff   relative-time-span    

625   25   16:03, 1st July, 2020


Локализация дескрипторов формата даты

Что является лучшим способом, чтобы локализовать формат даты, дескриптора?

Как знает любой человек из культуры, которая не использует формат mm/dd/yyyy, раздражает необходимость вводить даты в этом формате. То.NET framework обеспечивает очень хорошую поддержку локализации, поэтому тривиально анализировать даты в соответствии с культурой пользователей, но вы часто хотите также отобразить полезную подсказку относительно требуемого формата (особенно для различения yy и yyyy, которые взаимозаменяемы в большинстве культур).

Каков наилучший способ сделать это таким образом, чтобы иметь смысл для большинства пользователей (например, dd/M/yyy сбивает с толку из-за изменения регистра и переключения между одной и двумя буквами).

.net   internationalization   date   globalization    

482   7   16:03, 1st July, 2020


Как удалить временную часть значения datetime (сервер SQL)?

Вот что я использую:

SELECT CAST(FLOOR(CAST(getdate() as FLOAT)) as DATETIME)

Я думаю, что может быть лучший и более элегантный способ.

Требования:

  • Это должно быть как можно быстрее (чем меньше отливок, тем лучше).
  • Конечным результатом должен быть тип datetime , а не строка.

sql-server   datetime   date-conversion    

516   0   16:03, 1st July, 2020


Каков наилучший способ обернуть время вокруг рабочего дня?

У меня есть ситуация, когда я хочу добавить часы к дате и иметь новую дату вокруг рабочего дня. Я придумал функцию, чтобы определить эту новую дату, но хочу убедиться, что я ничего не забыл.

Часы, чтобы быть добавлены называют "delay". Вместо этого он может легко быть параметром функции.

Пожалуйста, разместите любые предложения. [VB.NET предупреждение]

Private Function GetDateRequired() As Date
    ''// A decimal representation of the current hour
    Dim hours As Decimal = Decimal.Parse(Date.Now.Hour) + (Decimal.Parse(Date.Now.Minute) / 60.0) 

    Dim delay As Decimal = 3.0           ''// delay in hours
    Dim endOfDay As Decimal = 12.0 + 5.0 ''// end of day, in hours
    Dim startOfDay As Decimal = 8.0      ''// start of day, in hours

    Dim newHour As Integer
    Dim newMinute As Integer

    Dim dateRequired As Date = Now
    Dim delta As Decimal = hours + delay

    ''// Wrap around to the next day, if necessary
    If delta > endOfDay Then
        delta = delta - endOfDay
        dateRequired = dateRequired.AddDays(1)

        newHour = Integer.Parse(Decimal.Truncate(delta))
        newMinute = Integer.Parse(Decimal.Truncate((delta - newHour) * 60))
        newHour = startOfDay + newHour
    Else
        newHour = Integer.Parse(Decimal.Truncate(delta))
        newMinute = Integer.Parse(Decimal.Truncate((delta - newHour) * 60))
    End If

    dateRequired = New Date(dateRequired.Year, dateRequired.Month, dateRequired.Day, newHour, newMinute, 0)

    Return dateRequired
End Sub

Примечание: это, вероятно,не будет работать, если задержка составляет более 9 часов. Он никогда не должен меняться от 3, до конца.

EDIT: Цель состоит в том, чтобы найти дату и время, которые вы получите в результате добавления нескольких часов к текущему времени. Это используется для определения значения по умолчанию для даты выполнения отправки. Я хочу добавить 3 часа к текущему времени, чтобы получить срок выполнения. Однако я не хочу, чтобы сроки выполнения выходили за пределы 5 вечера в текущий день. Итак, я попытался разделить часы между (сегодня, до 5 вечера) и (завтра, с 8 утра), так что добавление 3 часов к 4 вечера даст вам 19 утра, потому что 1 час добавляется к концу сегодняшнего дня и 2 часа добавляются к началу завтрашнего дня.

vb.net   date    

482   3   16:03, 1st July, 2020


T-Sql формат даты в секундах с момента последней эпохи / форматирование для ввода sqlite

Я предполагаю, что это должно быть что-то вроде:

CONVERT(CHAR(24), lastModified, 101)

Однако я не уверен в правильном значении для третьего параметра.

Спасибо!


Ну, я пытаюсь написать сценарий для копирования моей базы данных сервера sql в файл sqlite, который загружается в приложение air, которое затем синхронизирует данные с другим файлом sqlite. У меня куча проблем с датами. Если я выбираю дату в air и пытаюсь вставить ее, это не удается, потому что она не в правильном формате... даже если это была действительная дата для начала. Я решил, что попробую поэкспериментировать с unix временем, так как это единственное, что работает до сих пор. Я рассматриваю возможность просто оставить их как varchar, потому что я все равно не сортирую по ним.

tsql   sqlite   date    

498   6   04:44, 14th August, 2020


Как вы преобразуете число, полученное от datepart, в название дня?

Есть ли быстрый однострочный вызов datepart в Sql Server и получить обратно название дня вместо просто номера?

select datepart(dw, getdate());

Это вернет 1-7, а в воскресенье будет 1. Я бы хотел 'Sunday' вместо 1.

sql-server   datepart    

457   4   20:00, 28th August, 2020


Что делают методы getUTC* в объекте date?

Что это значит, когда вы получаете или создаете дату в формате UTC в JavaScript?

javascript   date   utc    

466   3   13:54, 17th August, 2020


Как выполнить синтаксический анализ и конвертировать DateTime в формат даты-времени RFC 3339?

Как преобразовать структуру DateTime в ее эквивалент RFC 3339 форматированного строкового представления и / или проанализировать это строковое представление обратно в структуру DateTime? Формат даты-времени RFC-3339 используется в ряде спецификаций, таких как формат синдикации Atom.

.net   datetime   rfc3339   atom-feed    

564   4   06:10, 3rd August, 2020


Дата создания скомпилированного исполняемого файла (VC++ 2005)

Дата создания исполняемого файла, связанного в VS2005, не устанавливается в реальную дату создания файла .exe . Только полная перестройка установит текущую дату, повторная ссылка не сделает этого. Очевидно, что файл установлен на некоторую дату, которая взята из одного из файлов проекта.

Итак: есть ли способ заставить компоновщика установить дату создания на реальную дату ссылки?

date   executable    

365   4   23:21, 26th August, 2020


Работа с PHP сервером и MySQL сервером в разных часовых поясах

Для тех из нас, кто использует стандартные пакеты общего хостинга, такие как GoDaddy или сетевые решения, как вы обрабатываете конверсии datetime, когда ваш хостинг-сервер (PHP) и MySQL сервер находятся в разных часовых поясах?

Кроме того, есть ли у кого-нибудь рекомендации по определению часового пояса, в котором находится посетитель вашего сайта, и соответствующим образом манипулирует переменной datetime?

php   mysql   datetime   date   timezone    

467   2   02:50, 7th August, 2020


Дата создания скомпилированного исполняемого файла (VC++ 2005)

Дата создания исполняемого файла, связанного в VS2005, не устанавливается в реальную дату создания файла .exe . Только полная перестройка установит текущую дату, повторная ссылка не сделает этого. Очевидно, что файл установлен на некоторую дату, которая взята из одного из файлов проекта.

Итак: есть ли способ заставить компоновщика установить дату создания на реальную дату ссылки?

date   executable    

342   4   06:50, 11th August, 2020


Если у меня есть строка PHP в формате YYYY-DD-MM и timestamp в MySQL, есть ли хороший способ конвертировать между ними?

Мне интересно провести сравнение между строкой даты и MySQL timestamp. Однако я не вижу легкой конверсии. Неужели я упускаю что-то очевидное?

php   mysql   time   timestamp   date    

412   6   20:11, 27th August, 2020


Преобразование даты / времени с помощью time.mktime кажется неправильным

>>> import time
>>> time.strptime("01-31-2009", "%m-%d-%Y")
(2009, 1, 31, 0, 0, 0, 5, 31, -1)
>>> time.mktime((2009, 1, 31, 0, 0, 0, 5, 31, -1))
1233378000.0
>>> 60*60*24 # seconds in a day
86400
>>> 1233378000.0 / 86400
14275.208333333334

time.mktime должно возвращать количество секунд с момента начала эпохи. Поскольку я даю ему время в полночь, а эпоха-в полночь, разве результат не должен быть равномерно делим на количество секунд в день?

python   datetime    

473   4   13:42, 12th August, 2020


jQuery AJAX против UpdatePanel

У нас есть страница с тонной jQuery (примерно 2000 строк), которую мы хотим обрезать b/c это кошмар обслуживания, и его может быть проще поддерживать на сервере. Мы подумали о том, чтобы использовать для этого UpdatePanel. Однако нам не нравится тот факт, что UpdatePanel отправляет всю страницу обратно на сервер.

javascript   jquery   asp.net   ajax   updatepanel    

474   4   06:14, 25th August, 2020


Какой хороший способ проверить, находятся ли две даты в один и тот же календарный день в TSQL?

Вот проблема, с которой я сталкиваюсь: у меня есть большой запрос, который должен сравнить даты в предложении where, чтобы увидеть, если две даты находятся в один и тот же день. Мое текущее решение, которое отстойно, состоит в том, чтобы отправить даты в UDF, чтобы преобразовать их в полночь того же дня, а затем проверить эти даты на равенство. Когда дело доходит до плана запроса, это катастрофа, как и почти все UDFs в предложениях joins или where. Это одно из немногих мест в моем приложении, где я не смог искоренить функции и дать оптимизатору запросов то, что он действительно может использовать для поиска лучшего индекса.

В этом случае слияние кода функции обратно в запрос кажется нецелесообразным.

Мне кажется, я упускаю здесь что-то простое.

Вот функция для справки.

if not exists (select * from dbo.sysobjects 
              where id = object_id(N'dbo.f_MakeDate') and               
              type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
  exec('create function dbo.f_MakeDate() returns int as 
         begin declare @retval int return @retval end')
go

alter function dbo.f_MakeDate
(
    @Day datetime, 
    @Hour int, 
    @Minute int
)
returns datetime
as

/*

Creates a datetime using the year-month-day portion of @Day, and the 
@Hour and @Minute provided

*/

begin

declare @retval datetime
set @retval = cast(
    cast(datepart(m, @Day) as varchar(2)) + 
    '/' + 
    cast(datepart(d, @Day) as varchar(2)) + 
    '/' + 
    cast(datepart(yyyy, @Day) as varchar(4)) + 
    ' ' + 
    cast(@Hour as varchar(2)) + 
    ':' + 
    cast(@Minute as varchar(2)) as datetime)
return @retval
end

go

Чтобы усложнить ситуацию, я подключаюсь к таблицам часовых поясов, чтобы проверить дату по местному времени, которое может отличаться для каждой строки:

where 
dbo.f_MakeDate(dateadd(hh, tz.Offset + 
    case when ds.LocalTimeZone is not null 
    then 1 else 0 end, t.TheDateINeedToCheck), 0, 0) = @activityDateMidnight

[Редактировать]

Я включаю предложение @Todd's:

where datediff(day, dateadd(hh, tz.Offset + 
    case when ds.LocalTimeZone is not null 
    then 1 else 0 end, t.TheDateINeedToCheck), @ActivityDate) = 0

Мое неправильное представление о том, как работает datediff (один и тот же день года в последовательные годы дает 366, а не 0, как я ожидал), заставило меня потратить много усилий.

Но план запроса не изменился. Я думаю, что мне нужно вернуться к чертежной доске со всем этим.

sql   sql-server   tsql   datetime   user-defined-functions    

453   10   19:32, 19th August, 2020


Сравнение дат вступления в силу в SQL

Интересно, есть ли лучше, почему в предложении WHERE выбора записей, когда вам нужно посмотреть на эффективные даты начала и окончания?

В настоящее время это, как я сделал это в прошлом на сервере MS SQL. Просто беспокоюсь о дате, а не о времени. Я использую SQL Server 2005.

AND Convert(datetime, Convert(char(10), ep.EffectiveStartDate, 101))
   <= Convert(datetime, Convert(char(10), GetDate(), 101))
AND Convert(datetime, Convert(char(10), ep.EffectiveEndDate, 101))
   >= Convert(datetime, Convert(char(10), GetDate(), 101))

sql   sql-server   date   sql-server-2005    

536   5   13:03, 8th August, 2020


Естественный язык Дата / Время парсер для .NET?

Кто-нибудь знает о парсере даты и времени .NET, похожем на хронический для Ruby (обрабатывает такие вещи, как "tomorrow" или "3 часа дня в следующий четверг")?

Примечание: Я действительно пишу Ruby (именно так я знаю о хроническом), но этот проект должен использовать .NET.

.net   datetime   nlp    

450   9   20:25, 4th August, 2020


Ruby / Rails доисторические даты на windows

Работая с датами в ruby и rails на windows, у меня возникают проблемы с датами до эпохи (до 1970 года), выбрасывающими исключения из диапазона. Я попытался использовать оба объекта Time и DateTime , но по-прежнему имею те же проблемы.

ruby-on-rails   ruby   date    

373   3   07:58, 21st August, 2020


SQL сервер DateTime сбой преобразования

У меня есть большая таблица с 1 миллионом+ записей. К сожалению, человек, создавший таблицу, решил поместить даты в поле varchar(50) .

Мне нужно сделать простое сравнение дат -

datediff(dd, convert(datetime, lastUpdate, 100), getDate()) < 31

Но он терпит неудачу на convert() :

Conversion failed when converting datetime from character string.

По-видимому, в этой области есть что-то, что ему не нравится, и поскольку существует так много записей, я не могу сказать, просто взглянув на нее. Как я могу правильно очистить все поле даты, чтобы оно не провалилось на convert() ? Вот что у меня сейчас есть:

select count(*)
from MyTable
where
    isdate(lastUpdate) > 0
    and datediff(dd, convert(datetime, lastUpdate, 100), getDate()) < 31

@SQLMenace

Я не беспокоюсь о производительности в этом случае. Это будет одноразовый запрос. Изменение таблицы на поле datetime не является опцией.

@Jon Лимджап

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


@SQLMenace

Проблема скорее всего в том, как хранятся данные, есть только два безопасных формата; ISO YYYYMMDD; ISO 8601 yyyy-mm-dd Thh:mm:ss:mmm (без пробелов)

Разве чек isdate() не позаботится об этом?

Мне не нужна точность 100%. Я просто хочу получить большую часть записей за последние 30 дней.


@SQLMenace

select isdate('20080131') -- returns 1
select isdate('01312008') -- returns 0

@Brian Schkerke

Поместите CASE и ISDATE внутри функции CONVERT().

Спасибо! Вот и все.

sql-server   datetime    

479   10   11:46, 5th August, 2020


Является ли DateTime.Now лучшим способом измерения производительности функции?

Мне нужно найти узкое место и нужно как можно точнее измерить время.

Является ли следующий фрагмент кода лучшим способом измерения производительности?

DateTime startTime = DateTime.Now;

// Some execution process

DateTime endTime = DateTime.Now;
TimeSpan totalTimeTaken = endTime.Subtract(startTime);

c#   .net   performance   datetime   timer    

545   15   05:46, 28th August, 2020


Очень долго работает Update запрос Oracle

Подскажите как можно ускорить апдейт. На данный момент работает 12+ часов. В таблице TABLE и TABLE_NEW примерно по 1 млн записей, что не так много.
Разработчик, который делал код ушел в закат, наверное торопился и сделал апдейт не оптимальным.

UPDATE TABLE ix 
    SET (PLAN,Name)=(SELECT DISTINCT s.PLAN, s.name
                     FROM TABLE_NEW s
                     WHERE ix.DBKEY=s.DBKEY AND ix.STORE=s.STORE AND ix.PLAN<>s.PLAN)
    WHERE ix.DBKEY IN(SELECT ix.dbkey 
                     FROM TABLE ix, (SELECT DISTINCT DBKEY, STORE, PLAN, name FROM TABLE_NEW) s 
                     WHERE ix.DBKEY=s.DBKEY AND ix.STORE=s.STORE AND ix.PLAN<>s.PLAN);

Oracle   update  

916   0   09:58, 27th January, 2025