Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как изменить формат даты ? / 5 сообщений из 5, страница 1 из 1
17.11.2000, 07:15
    #32000746
Sasha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить формат даты ?
Можно ли в MSS изменить формат даты, что бы он работал не с mm.dd.yyyy , а с dd.mm.yyyy
...
Рейтинг: 0 / 0
17.11.2000, 10:26
    #32000749
petr13
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить формат даты ?
В случае использовании констант (напремер в Where или Install) пользуйся
Set dataformat dmy -- день, месяц, год
При выборках - используй функцию CONVERT
...
Рейтинг: 0 / 0
20.11.2000, 16:05
    #32000784
Oleg F
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить формат даты ?
Что если пошлёшь запрос вида
SELECT ....
FROM ...
WHERE CONVERT(поле_даты),...) = ...

То индекс по этому полю (если он есть) использоваться не будет. Впрочем, это касается любого поля (не только даты). Если при поиске идёт обращение не к полю напрямую, а через функцию, то поиск ведётся путём сканирования всей таблицы данных.

Так что использование SET DATEFORMAT предпочтительней.
...
Рейтинг: 0 / 0
21.11.2000, 10:22
    #32000793
dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить формат даты ?
Это относится ко всем индексам? (независимо от того кластерный он или некластерный?) И не зависит ли от вида функции. Если есть ссылочка на эту тему, буду весьма признателен.

Кстати, можно ведь использовать и наоборот where <поле даты>=Convert(datetime,<константа/выражение>,<формат даты&gt. Тогда никакая функция от поля с индексом браться и не будет
...
Рейтинг: 0 / 0
21.11.2000, 10:50
    #32000796
Oleg F
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить формат даты ?
"Кстати, можно ведь использовать и наоборот where <поле даты>=Convert(datetime,<константа/выражение>,<формат даты>"

Да, действительно, в этом случае SQL Server может использовать индекс.
Я не могу сказать, есть ли в документации информация про взаимоотношения индексов и функций.
Я сам пришёл к этому выводу, анализируя планы выполнения различных запросов к полям разных типов. Т.е. эмпирическим путём. Не думаю, что разница "кластерный" или "некластерный" как-то повлияет на работу оптимизатора запросов. Т.к. кластерный индекс лишь определяет способ физического расположения строк в таблице (т.е. в отсортированном порядке), но не способ поиска.
В документации я нашёл только явное утверждение про LIKE, что если LIKE 'значение%', то индекс будет использоваться, а если LIKE '%значение', то не будет.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как изменить формат даты ? / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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