![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SQL запрос [D7, Paradox]
Юля П © (2003-09-15 10:45:00)
Как мне в SQL перевести строковую переменную в вещественную.
И можно ли сделать так в SQL, чтобы в DBGrid отображалась внизу сумма по какому-либо столбцу?
Arm79 (2003-09-15 15:23:00) [1]
Я работал с access. Там тоже были с запятой. Но когда я писал запятую, то access ее игнорировал. Зато "." работала отлично, и отображалась она как ",". Вышел из этого положения так:
procedure TForm2.BitBtn1Click(Sender: TObject);
var
Position:byte;
PriceStr:String;
PriceChar:String;
begin
Position:=Pos(",", LabeledEdit2.Text);
if Position=0 then exit;
PriceStr:=LabeledEdit2.Text;
PriceChar:=".";
Delete(PriceStr, Position, 1);
Insert(PriceChar, PriceStr, Position);
LabeledEdit2.Text:=PriceStr;
end;
В SQL не реализовывал.
Юля П (2003-09-15 15:14:00) [2]
Но значения уже в базе с запятой
Arm79 (2003-09-15 13:58:00) [3]
Вместо "," нужно "."
Юля П (2003-09-15 13:55:00) [4]
Вообще я хотела перевести строковое поле в вещественное и подсчитать сумму его значений. И чтобы это отобразилось в DBGrid. Если это возможно.
Юля П (2003-09-15 13:26:00) [5]
Быдо строковое значение "123,45", а получилось 12345
Vovchik_A (2003-09-15 13:14:00) [6]
Пусть тогда , наверное, код покажет и скажет чего хочет добиться
Vovchik_A (2003-09-15 13:13:00) [7]
Vlad © (15.09.03 13:08) [7]
Нету ее в SQl.
Vlad (2003-09-15 13:08:00) [8]
>Vovchik_A © (15.09.03 13:01) [6]
Где в SQL ты видел функцию StrToFloat ?
>Юля П (15.09.03 10:45)
Как мне в SQLперевести строковую переменную в вещественную.
Vovchik_A (2003-09-15 13:01:00) [9]
StrToFloat(const S: string):Extended ?
Преобразует строку в действительное число.
А если значений в строке несколько, то строку надо сначла разобрать.
Или я чего-то не понял ?
Vlad (2003-09-15 12:30:00) [10]
>числа с десятичными знаками, но не поставил запятые
Опять не понял, как это ? Если было строковое значение, напр. "123,45" то он должен преобразовать в 123,45
А в вашем случае что получилось ?
Юля П (2003-09-15 12:23:00) [11]
Получилось преобразовать. Я поставила тип float он вывел числа с десятичными знаками, но не поставил запятые.
А если поставить тип real, он пишет "Capability not supported"
Что делать?
Vlad (2003-09-15 11:59:00) [12]
>строковое поле, где много значений
Это как ? Преобразовать весь столбец в таблице чтоли ?
select cast(Field as Number) from Table, где Field - ваше строковое поле.
Вернет столбец, преобразованный к вещественному типу.
Юля П (2003-09-15 11:51:00) [13]
А возможно перевести строковое поле, где много значений в вещественное?
Vlad (2003-09-15 10:51:00) [14]
cast(строковая_переменная as Нужный_тип_данных)
А чтоб в гриде отображалась сумма, можно сделать так, например
select field1, field2 from table
union
select sum(field1), sum(field2) from table