Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

Приведение типов   Найти похожие ветки 

 
Вопрошающий   (2004-05-13 13:33) [0]

MS Jet преподносит новые сюрпризы.
В таблице поле [Количество] имеет тип Integer.
Запрос

SELECT
 SUM(Количество) AS [Всего],
 ...


возвращает тип Float.

Как привести результат к типу Integer?


 
Мунька ©   (2004-05-13 13:40) [1]

Привести где? В делфийской программе? Нет ничего проще, записать

Sum : integer
Sum = Round(QUerySum.FieldByName("[Всего]").AsFloat );
Или Вас интересует, как привести в самом запросе? Тогда зачем Вам это надо?


 
Вопрошающий   (2004-05-13 13:48) [2]

Ув. Мунька!

Вопрос идет именно о запросе.

> зачем Вам это надо?

ADOQueryField5: TIntegerField;

При открытии набора данных возникает естетсвенное исключение: Type mismatch for field "Всего", expecting: Integer, actual: Float.


 
Мунька ©   (2004-05-13 13:50) [3]

Что Вам мешает поменять тип поля в запросе ADOQuery? и вообще, Вы уверены, что кличество - целое? Кстати, попытайтесь выполнить этот запрос в Ассеss и посмотрите на тип возвращаемого значения


 
Johnmen ©   (2004-05-13 13:53) [4]

SELECT
CAST(SUM(Количество) AS INTEGER) AS [Всего],
...


 
sniknik ©   (2004-05-13 13:54) [5]

> MS Jet преподносит новые сюрпризы.
Вопрошающий удивлен! он не читал доку по Jet.

;о) (чемто первое заявление на газетный заголовой похоже, надеюсь мое в том же "стиле", скоро будет "развязка" :)


SELECT
Int(SUM(Количество)) AS [Всего],


 
Вопрошающий   (2004-05-13 13:58) [6]

Мне не нужнен результат "1.0". Мне нужно "1". И количество - именно целое, даже длинное целое - или это не я создавал таблицу.

P.S. Предложение сделать Calculated поле (с последующими извращениями) не принимаются... :)


 
Вопрошающий   (2004-05-13 14:03) [7]

2 Johnmen

CAST в MS Jet не работат. Исключение: Неопознанная ошибка.

2 sniknik

Развязки не будет: INT() возвращает все тот же FLOAT. (Или я не пробовал?).


 
Вопрошающий   (2004-05-13 14:17) [8]

Богема нагадила [5] и ушла.


 
sniknik ©   (2004-05-13 15:02) [9]

> Развязки не будет: INT() возвращает все тот же FLOAT. (Или я не пробовал?).
int проводит к типу в запросе (> Вопрос идет именно о запросе.), за то что возвращается он не отвечает. ты посмотри что возвращает твой "незамутненный" вычислениями Integer тем же способом каким счас смотриш.
вот из такого
SELECT
Количество AS [Всего],

> Богема нагадила [5] и ушла.
вот теперь понимаю почему ты не подписываешся.

p.s. перестать отвечать анонимам, чтоли?


 
MIKE kouzmine ©   (2004-05-13 16:15) [10]

sniknik ©   (13.05.04 15:02) [9] Не надо. Ты отвечаешь не только им.



Страницы: 1 вся ветка

Текущий архив: 2004.06.06;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.024 c
1-1085171259
Макс
2004-05-22 00:27
2004.06.06
Фокус-покус


3-1084781987
Andrey_ck
2004-05-17 12:19
2004.06.06
QReport


1-1085550988
Valeri
2004-05-26 09:56
2004.06.06
TEdit, курсор


1-1085219550
yevgeniy
2004-05-22 13:52
2004.06.06
4-байтовое значение цвета


1-1085694297
Gestapo
2004-05-28 01:44
2004.06.06
Как вставить метафайл из буфера обмена в TImage?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский