powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
11 сообщений из 11, страница 1 из 1
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32378536
Sybase SQLAnywhere 5.5

Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?

например число 50 хранится как 50.000

если в селекте выбрать один столбец с числом то выводится 50, а если преобразовать этот столбец к строке то выводится 50.000 - в склейке тоже самое ...
...
Рейтинг: 0 / 0
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32379291
Aleksey Kh.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
create variable v_test numeric( 12 , 3 );
set v_test= 50 . 1 ;
select cast(v_test as double);


p.s. Попробуйте:
Код: plaintext
select cast(v_test as float)
...
Рейтинг: 0 / 0
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32384524
спасибо, всё работает...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32923928
Vadim Romanenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хм-м-м... Я столкнулся с такой же проблемой (по крайней мере звучит так же) на АСА9. Есть набор цифирей. Дробных. Нужно склеять в строку. Как бы сделать так, чтоб в конце не было нулей??
Сейчас делаю так:
set lv_ret = lv_ret + cast(ln_val as varchar(20)) + ':';
и получается:
446.000000:19.100000:19.200000:
а хочется:
446:19.1:19.2:

Кто может подскажет как это сделать?? Примеры, приведенные выше, по-моему как-то слабо относятся к проблеме...
...
Рейтинг: 0 / 0
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32923977
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
BEGIN
  DECLARE @N1 numeric( 12 ,  3 );
  DECLARE @N2 numeric( 12 ,  3 );
  DECLARE @N3 numeric( 12 ,  3 );
  SET @N1 =  1 . 1 ;
  SET @N2 =  2 . 12 ;
  SET @N3 =  3 . 123 ;

  SELECT CONVERT(double, @N1) || ', ' || CONVERT(double, @N2) || ', ' ||
    CONVERT(double, @N3) AS TestString;
END;
TestString'1.1, 2.12, 3.123'
...
Рейтинг: 0 / 0
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32924366
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще говоря к float/double нужно преобразовывать осторожно. Потому как может быть потеря точности. Если это только для целей показа значения, то наверное можно.
...
Рейтинг: 0 / 0
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32924746
Vadim Romanenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выполняется такое:
declare lv_ret varchar(500);
declare ln_val numeric;
...
select lv_ret+convert(double,ln_val)+':'
into lv_ret
from dummy;
...
на выполнении select возникает ошибка: 53018 - Cannot convert %1 to a %2...
Что бы это могло значить-то???
...
Рейтинг: 0 / 0
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32924748
Vadim Romanenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати! А как посомтреть параметры exception? Что такое %1 и %2??
...
Рейтинг: 0 / 0
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32924760
Vadim Romanenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хммммм.... А вот так:
...
select convert(double,ln_val) into lv_ret
from dummy;
...
почему-то exception не возникает... Что ж не так-то???
...
Рейтинг: 0 / 0
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32924770
Vadim Romanenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заработало так:
...
select lv_ret||convert(double,ln_val)||':'
into lv_ret
from dummy;
...

ЧТО ЗА БРЕД??? :( Может оператор || имеет какие-то особенности??? По сравнению с +??
...
Рейтинг: 0 / 0
Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
    #32924801
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BOLexpression || expression String concatenation (two vertical bars). If either string is NULL, it is treated as the empty string for concatenation.

expression + expression Alternative string concatenation. When using the + concatenation operator, you must ensure the operands are explicitly set to character data types rather than relying on implicit data conversion

...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Как в запросе склеить number(12,3) и varchar(25) без добавления нулей в конце числа ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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