Гость
Map
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Дата из SQL в Excel / 22 сообщений из 22, страница 1 из 1
25.11.2013, 09:39
    #38476192
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Здравствуйте.

Есть таблица в SQL с типом данных : datetime
Если в Excel привязаться к этой таблице то дата будет отображаться в следующем формате: 09.11.2013 0:00:00
Если в SQL поставить тип данных: date, то Excel распознает это как: 2013-11-09

Как сделать так, что бы Excel распознавал данные как: 09.11.2013?
...
Рейтинг: 0 / 0
25.11.2013, 10:16
    #38476231
WarAnt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Im_Max,

Вопрос к Excel.

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
25.11.2013, 11:11
    #38476300
f
f
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Ответ зависит от того, что вы понимаете под в Excel привязаться к этой таблице
...
Рейтинг: 0 / 0
25.11.2013, 11:21
    #38476311
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Данные - Из других источников - с сервера SQL Server
...
Рейтинг: 0 / 0
25.11.2013, 11:35
    #38476334
гр к
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Im_Max, а просто формат отображения в ячейках поменять не поможет?
...
Рейтинг: 0 / 0
25.11.2013, 11:52
    #38476363
f
f
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Меняйте формат ячеек сохраненным макросом.
...
Рейтинг: 0 / 0
25.11.2013, 11:57
    #38476374
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
гр к,

У меня в разных таблицах - разное время стоит.

Это влияет на вычисления

26.11.2013 - 25.11.2013 = 1
26.11.2013 10:00:05 - 25.11.2013 10:00:07 = 01.01.1900

Ну и вес ячейки с датой более чем в 2 раза больше чет datetime.

Можно заморочится с макросами, но у меня много отчетов и везде их нужно будет добавлять, плюс как я понял нужно будет и сохранять их в формате Excel с макросом, и рассылать. Лишний шанс того что конечный пользователь что - нибудь натыкает ненужное. Вот и хотел узнать как еще на уровне SQL отсечь время, что бы в ячейках хранилась только дата.
...
Рейтинг: 0 / 0
25.11.2013, 12:02
    #38476386
f
f
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Тогда используйте View или хранимые процедуры на сервере, гле будете приводить все даты к одному виду через Cast/Convert.
...
Рейтинг: 0 / 0
25.11.2013, 12:16
    #38476410
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
F,

У меня и так данные все в хранимой процедуре. Вопрос как раз изначальный был таков: Как правильно задать дату в SQL что бы Excel видел ее как только дату без времени.
Так как формат Datetime Excel видит как 25.11.2013 15:19:12
А формат Date видит как текст: 2013-11-25
...
Рейтинг: 0 / 0
25.11.2013, 12:25
    #38476422
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Я так понял что используя Cast/Convert я смогу избавиться от времене.
И 25.11.2013 15:27:12 превратить в 25.11.2013 00:00:00
Но в 25.11.2013 перегнать не получится, так как это формат date, который Excel не распознает.
...
Рейтинг: 0 / 0
25.11.2013, 12:36
    #38476437
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
используя преобразования на стороне сервера, ты можешь превратить дату в текст в любом формате
и даже добавить апостроф в начало
и эксель примет это уже как текст, а не как дату
...
Рейтинг: 0 / 0
25.11.2013, 12:39
    #38476445
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Shocker.Pro,

Мне просто нужен формат, который Excel поймет как дату. Без времени.
...
Рейтинг: 0 / 0
25.11.2013, 12:43
    #38476451
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Дата не бывает без времени. Тип "Дата представляет собой 8-ми байтное число в котором заложена и дата и ВРЕМЯ. ВСЕГДА!

Так что речь идет исключительно о внешнем отображении оного поля, то есть о форматировании. Хочешь, форматируй на клиенте, хочешь - на сервере, но это только отображение для пользователя. Попытайся это понять, тогда будет легче придумать, как лучше поступить.
...
Рейтинг: 0 / 0
25.11.2013, 13:00
    #38476482
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Shocker.ProДата не бывает без времени. Тип "Дата представляет собой 8-ми байтное число в котором заложена и дата и ВРЕМЯ. ВСЕГДА!

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

Понятно. Я просто думал что можно отобразить только дату.
В книжке по SQL в типах даты есть Date. В SQL отображается как дата без времени. И размер байт ее = 3. А у DateTime = 8.

Ну раз нельзя, буду хотябы обнулять время.
Большое всем спасибо за советы.
...
Рейтинг: 0 / 0
25.11.2013, 13:20
    #38476517
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Im_MaxВ книжке по SQL в типах даты есть Date. В SQL отображается как дата без времени. И размер байт ее = 3а у экселя такой нет, он ее преобразует в аналог datetime, даже скорее всего не он, а провайдер
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
06.10.2015, 16:55
    #39069644
Rieha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
авторisnull(CONVERT(varchar(10), case PostServOrder.[Actual Finish Date] when '1753-01-01 00:00:00.000' then null else PostServOrder.[Actual Finish Date] end, 104),'') AS 'Дата1'
Эта функция возвращает дату в формате дд.мм.гггг,
но Excel никак не воспринимает ее как дату и не дает возможности нормально фильтровать.
Если кликнуть в ячейку Excel , то он сразу же преобразовывает ее в дату.


Подскажите, в каком формате надо выдать экселю дату, чтобы он сразу ее воспринял правильно?
...
Рейтинг: 0 / 0
07.10.2015, 08:14
    #39070070
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Rieha, чтобы эксель понял что дата это дата, то и надо возвращать поле в типа дата (простите за тавтологию), иначе он будет в ячейке писать типа "число сохранено как тест" и т.п

т.е для Вашего случая измените запрос
Код: sql
1.
CONVERT(datetime, case PostServOrder.[Actual Finish Date] when '1753-01-01 00:00:00.000' then null else PostServOrder.[Actual Finish Date] end) AS 'Дата1'


возможно можно поиграться форматом столбца, но, могу и ошибаться, это не работает
...
Рейтинг: 0 / 0
07.10.2015, 11:18
    #39070314
Rieha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Спасибо! Помогло.
т.е даже если в таблице SQL хранится значение даты, его все равно надо конвертировать в дату, для корректного понимая Excel.
...
Рейтинг: 0 / 0
07.10.2015, 11:48
    #39070351
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
RiehaСпасибо! Помогло.
т.е даже если в таблице SQL хранится значение даты, его все равно надо конвертировать в дату, для корректного понимая Excel.
конечно же не надо. Зачем делать лишние преобразования.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
13.10.2016, 17:38
    #39326532
Бурков
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Ребят, помогите с датой в сводной таблицей - перепробовал все что указано выше и не помогает.
Вставляю сводную таблицу нацеленную на таблицу в SQL Server. И если дату выносишь в фильтр, то выводит в указанном формате но СПИСКОМ, а не иерархией + год + месяц + день.

Когда вставляешь не сводную таблицу, а просто данные с сервера (Данные -> Из других источников -> SQL Server) то таких проблем не возникает. Нормальный фильтр работает.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
15.11.2019, 12:20
    #39889489
Maksmanz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Бурков,

Привет. Подскажи, удалось ли тебе решить проблему? У меня такая же ситуация, но я не могу нигде найти решение.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
08.09.2021, 15:53
    #40096033
нуб987
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дата из SQL в Excel
Maksmanz, ексель не умеет так
микрософт предлагает 2 варианта костылей :
автор 1. Измените тип столбца на DateTime в источнике SQL Server данных.
2. Для импорта данных используйте драйвер подключения к открытой базе данных (ODBC).
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Дата из SQL в Excel / 22 сообщений из 22, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]