Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Нужен символ ', замкнутый круг 
V
    Опции темы
Spirit_FTZI2
Дата 27.10.2007, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



Всем пре!

Смотрите код:
SELECT     Name,  Date, InTime, OutTime, CONVERT(char, CAST(OutTime AS datetime) - CAST(InTime AS datetime), 8) AS vremya,
CONVERT(char, CAST(InTime AS datetime) - CAST('9:00' AS datetime), 8) as opozdanie,
CONVERT(char, CAST(OutTime AS datetime) - CAST('18:00' AS datetime), 8) as pererabotka
FROM TALog


Этот запрос работает, но... Если его писать не руками, а присваивать из Delphi:
ADOQuery1.SQL.ADD('SELECT     Name,  Date, InTime, OutTime, CONVERT(char, CAST(OutTime AS datetime) - CAST(InTime AS datetime), 8) AS vremya,
CONVERT(char, CAST(InTime AS datetime) - CAST('9:00' AS datetime), 8) as opozdanie,
CONVERT(char, CAST(OutTime AS datetime) - CAST('18:00' AS datetime), 8) as pererabotka
FROM TALog'
); 
то символ ' будет розрывом строки возле времени. Если написать ...CAST("9:00" AS datetime)... то вылетает ошибка после компиляции (во время выполнения запроса): Invalid column name '9:00"

Как поменять символы, как написать ...CAST('9:00' AS datetime)...???  smile 

ADO+SQL server

А еще как реализовать: IIF(InTime> '9:00', CAST(InTime AS datetime) - CAST('9:00' AS datetime), 8) as opozdanie, 0) ??? Оишбка что знак > не опознан... То есть нужно что бы выводилась разница времени если InTime был позже чем 9.00???  

Это сообщение отредактировал(а) Spirit_FTZI2 - 27.10.2007, 21:01
PM MAIL   Вверх
Anark1
Дата 27.10.2007, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 622
Регистрация: 15.12.2006
Где: RF -> Moscow

Репутация: 1
Всего: 11



Попробуй двойной символ '.


--------------------
Enjoy yourself, still you can...;)

user posted image

user posted image
PM MAIL ICQ   Вверх
volvo877
Дата 27.10.2007, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 4
Всего: 116



Код

ADOQuery1.SQL.ADD('SELECT     Name,  Date, InTime, OutTime, CONVERT(char, CAST(OutTime AS datetime) - CAST(InTime AS datetime), 8) AS vremya,
CONVERT(char, CAST(InTime AS datetime) - CAST(''9:00'' AS datetime), 8) as opozdanie,
CONVERT(char, CAST(OutTime AS datetime) - CAST(''18:00'' AS datetime), 8) as pererabotka
FROM TALog'); 
Чувствуешь разницу?
PM MAIL   Вверх
Spirit_FTZI2
Дата 27.10.2007, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



ооо, работает!!!!!!!!!!!!!!!!!! smile  smile 

а как про IIF???
PM MAIL   Вверх
Spirit_FTZI2
Дата 27.10.2007, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



Кому интересно про IIF:

SELECT     Name, Date, InTime, OutTime, CONVERT(char, CAST(OutTime AS datetime) - CAST(InTime AS datetime), 8) AS vremya, 
                      CASE WHEN CAST(InTime AS datetime) > CAST('9:00' AS datetime) THEN CONVERT(char, CAST(InTime AS datetime) - CAST('9:00' AS datetime), 8) 
                      ELSE CONVERT(char, CAST('0:00' AS datetime), 8) END AS opozdanie
, CONVERT(char, CAST(OutTime AS datetime) - CAST('18:00' AS datetime), 8) 
                      AS pererabotka
FROM         TALog


 smile  smile  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0756 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.