Выберите дату в определенном формате

#c# #sql-server #sql-server-2005 #tsql #datetime-format

#c# #sql-сервер #sql-server-2005 #tsql #datetime-формат

Вопрос:

Я хочу выбрать столбец даты в определенном формате — предположим, мой формат даты MM/dd/yyyy . Я хочу выбрать ее как dd/MMM/yyyy

Я могу сделать это с помощью:

 SELECT CONVERT(VARCHAR(11), myDateColumn, 106)
  

Проблема в том, что я хочу выбрать ее в качестве типа DATETIME , а не VARCHAR потому что я хочу отсортировать свою сетку по этому столбцу.

Комментарии:

1. вы можете установить формат отображения в столбце таблицы.

Ответ №1:

Если вы хотите, чтобы столбец возвращался как DATETIME, тогда вы не можете преобразовать его в VARCHAR в SQL — вам нужно настроить сетку, в которой вы показываете эту дату, чтобы вместо этого столбец отображался в требуемом формате.

Ответ №2:

Затем не конвертируйте его в VARCHAR для начала. Просто выберите столбец без какого-либо преобразования, и он будет передан в ваш клиентский код C # в виде DateTime .

Комментарии:

1. Но его формат ММ / дд / гггг чч: мм. Я хочу формат дд / ММ / гггг

2. @Zain: У A DateTime нет формата. Вам нужно указать формат, в который вы хотите преобразовать его в конце.

3. Хорошо, пожалуйста, скажите мне, как выбрать столбец даты в определенном формате даты в ms sql.

4. @Zain: Нет, вы упускаете суть. Вы хотите выполнить форматирование как можно позже — на клиенте , а не в SQL.

5. Это невозможно в запросе ms sql?

Ответ №3:

Я изменяю формат даты в событии grid_ColumnAdded

например,Столбец.DefaultCellStyle.Format = «дд’ ‘МММ’ ‘гггг»;