powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как на SQL тип char преобразовать в дату
16 сообщений из 16, страница 1 из 1
Как на SQL тип char преобразовать в дату
    #32046398
KillArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня проблема: нужно сделать выборку из базы (MS SQL) суммы всех записей до конкретной даты.

select sum(summa) from money where potv=1 and date<'02.08.2002'

в базе поле date типа char. Т.е. как преобразовать для запроса char в дату, чтоб корректно отрабатывал условие меньше.
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046405
Фотография Тимур
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не об этом ?
select cast('10.10.2002' as datetime)
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046435
Denisco
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если не секрет, зачем дату в типе char хранить?
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046436
KillArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сервер MS SQL 7
sql строку я посылаю из внешней программы.
Есть куча записей с различными данными, например:
..., 30.07.2002, 01.08.2002, 02.08.2002
и если делаю выше приведенный запрос сервер выдает только записи за 01.08.2002 игнорируя кучу других записей 30.07.2002, 29.07.2002, ...
Думаю что надо сделать при помощи функций sql'я, но я не нашел функции которая преобразовывала бы стринговые записи в формат даты (для последующего сравнения). Не изменяя данные в самой базе (как был char так char'ом и остался).
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046441
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
select sum(summa) from money where potv= 1  and cast(date as datetime)<cast('02.08.2002'  as datetime)

хотя лучше преобразовать поле в базе....
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046442
KillArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
были проблемы с полем типа даты (точно не помню, вробе текущюю дату выводил не в том формате и год был 1900). Помогите плиззззззззз!!!
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046449
KillArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Во что выдал сервер:
The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.
Думаю что то надо делать с форматом даты. В базе у меня дд.нн.гг А как трактует сервер не знаю. Что делать.
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046455
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тогда используй covert.... почитай в BOL...
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046459
Фотография AndreK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
out-of-range datetime value - Это значит что в поле Date попалось чего-то вроде "Привет, Шишкин!!". Char есть char...
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046466
KillArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в поле Date все нормально (проверил). Насколько я понял сервер не может преобразовать char в дату. И вроде бы из за формата даты.
Может кто знает как сделать?
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046479
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да все знают.
select convert(datetime, fld,4) from ...
Неужели так трудно самому BOL посмотреть?
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046486
KillArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добавил в базу дополнительное поле ddd типа datetime и из бейсика конверчу в цикле значения поля date
CDate(Trim$(rs("date")))
и делаю update нового поля ddd. Все нормально, но записи за предыдущий месяц стали за текущий:
был 30.07.2002 стал 30.08.2002
был 20.06.2002 стал 20.08.2002
Чушь какая то.

и а теперь объясните что такое BOL (честно не знаю).
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046489
KillArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все сделал. Всем спасибо огромадное!!!
Причина ошибки была в формате даты.
Я сделал так:
set dateformat dmy
select sum(summa) from money where potv=1 and cast(date as datetime)<cast('02.08.2002' as datetime)
Вроде бы все работает правильно. Еще раз всем спасибо.
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046494
Фотография AndreK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boock On Line = BOL. Документация, помщь по MSSQL Server. Поставляется с самим серваком. первый источник информации.
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046591
z
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
z
Гость
Boock On Line <> BOL !
Books Online.
...
Рейтинг: 0 / 0
Как на SQL тип char преобразовать в дату
    #32046594
Зайцев Фёдор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 z
Books Online <> BOL!
BOL! = Books Online!
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как на SQL тип char преобразовать в дату
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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