Сведения о вопросе

Sadijon

20:00, 28th August, 2020

Теги

sql-server   datepart    

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

Просмотров: 456   Ответов: 4

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

select datepart(dw, getdate());

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



  Сведения об ответе

#hash

19:08, 25th August, 2020

select datename(weekday, getdate());


  Сведения об ответе

padenie

05:47, 4th August, 2020

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

select datename(dw,  getdate())

Я не уверен, как локализация будет работать с этой функцией. Получение имени клиентская сторона, вероятно, является ответом, но было бы неплохо сделать это в базе данных. Будет ли Sql Server использовать параметр сортировки для определения выходных данных для этого?


  Сведения об ответе

PROGA

17:06, 25th August, 2020

Это невозможно без использования результата для выбора дня самостоятельно. Во-первых, текстуальное представление дня зависит от locale. Для другого возвращаемое значение зависит от параметра 'datefirst'.


  Сведения об ответе

PIRLO

00:54, 7th August, 2020

Если вам нужно локализуемое решение, просто соедините результат с таблицей с именами и числами.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться