
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
24.12.2003, 20:40
|
|||
|---|---|---|---|
|
|||
SELECT |
|||
|
#18+
Извините за глупый вопрос, но ответа нигде не смогла найти пишу SELECT summa, nasch , iff(summa-nacsh>0, summa-nacsh, 0) as field1 FROM sums и почему то в поле field1 выходят звездочки (хотя число и не большое(100000 например)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.12.2003, 20:47
|
|||
|---|---|---|---|
SELECT |
|||
|
#18+
Напиши так: Код: plaintext 1. 2. Проблема здесь в том, что размерность полей в результате выборки определяется по результату выполнения функций на первых попавшихся записях. Скорее всего, первой записью попалась как раз запись у которой summa-nacsh<=0, т.е. field1 было рассчиатно как 0 и получило размерность N(1). Соответсвенно при вычислении последующих значений получили переполнение разрядности. О чем и свидетельствуют звездочки. Чтобы этого избежать, для числовых полей надо явно указывать разрядность либо так как это сделал я в примере (summa-summa), либо просто указав нужное количество нулей: iff(summa-nacsh>0, summa-nacsh, 00000000.00) Для функций с символьными полями необходимо всегда использовать добавление пробелов типа PADR(...,50) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=41&mobile=1&tid=1597367]: |
0ms |
get settings: |
6ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 225ms |
| total: | 338ms |

| 0 / 0 |
