2016-02-27 3 views
0

Мне нужна помощь при этом преобразовании не удалось при преобразовании даты и/или времени из символьной строки.tsql - конверсия не удалась при преобразовании даты и/или времени из символьной строки

Я пытаюсь запустить простой запрос на @as_of_date, 10 дней назад и 30 дней назад. Запрос работает нормально, если я запускаю его на 3-5 учетных записях, но больше, чем при сбое. Как изменить свой запрос, чтобы не получить ошибку преобразования?

Вот мой пример запроса: enter image description here

Редактировать

пытался также удаления цитаты из отборного заявления. Все еще не работает.

enter image description here

+1

Вы пытаетесь преобразовать строку '' @as_of_date'' вместо значения переменной с этим именем. удалить кавычки. –

+3

Почему вы печатаете 'mm-dd-yyyy' вместо формата, который не может быть неверно истолкован региональными/языковыми настройками, например' yyyymmdd'? Пожалуйста [прочитайте это полностью] (http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/16/bad-habits-to-kick-mishandling-date-range-queries.aspx). Кроме того, покажите весь код, так как я не считаю, что ошибка происходит в той части, которую вы показали. –

+0

Я думаю, что моя проблема намного больше. Мой запрос будет отлично работать для первых 1370 записей, но когда я меняю запрос на верхний 1371, он выдает сообщение об ошибке «преобразование при преобразовании даты и/или времени из символьной строки». Я также не могу заказать любой столбец. Я думаю, что это проблема с таблицей и отправила сообщение разработчику. – BIReportGuy

ответ

1

Вы можете попробовать использовать функцию ISDATE, чтобы видеть, что входные данные являются допустимой датой. Также я не вижу на скриншоте, как/что представляет собой вход.

+0

Функция ISDATE исправила проблему. Спасибо! – BIReportGuy

0

Вы конвертируете @as_of_date дважды. Вы можете использовать SELECT convert(date, getdate(), 110) Исправьте меня, если я ошибаюсь.

+0

Извините, это не работает. Я удалил конвертировать и только что использовал «currentday» = @as_of_date, и я все еще получаю сообщение об ошибке с ошибкой разговора. – BIReportGuy

0

пожалуйста, удалите кавычки для @asofdate переменной в операторе отбора и попытаться как новообращенный (дата, @ as_of_date, 110)

Примечание: При присвоении значения переменной только его преобразования, поэтому нет необходимости еще раз конвертировать in select statement

+0

Извините, это не сработало. См. Мою отредактированную версию выше. – BIReportGuy

Смежные вопросы

 Смежные вопросы