Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
27.04.2010, 17:00
|
|||
|---|---|---|---|
В поле- только цифры |
|||
|
#18+
Добрый день! Необходимо написать запрос, условие которого будет возвращать истину для всех записей, у которых конкретное поле содержит значения, состоящие только из цифр. Код: plaintext 1. 2. 3. Вообще-то это нужно чтобы сделать check constraint только на цифры Алексей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.04.2010, 17:22
|
|||
|---|---|---|---|
В поле- только цифры |
|||
|
#18+
В Оракле оказалось так: Код: plaintext 1. 2. 3. А в DB2 как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.04.2010, 17:39
|
|||
|---|---|---|---|
В поле- только цифры |
|||
|
#18+
Ребята с форума Оракла предложили select * from digittest where TRANSLATE(s,'A0123456789','A') IS NULL; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.04.2010, 18:03
|
|||
|---|---|---|---|
|
|||
В поле- только цифры |
|||
|
#18+
Алексей, WHERE TRANSLATE(s, 'A', ' 0123456789')='' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.04.2010, 18:32
|
|||
|---|---|---|---|
|
|||
В поле- только цифры |
|||
|
#18+
Можно через XQuery: Код: plaintext 1. А зачем в TRANSLATE(s, 'A', ' 0123456789')='' вторым параметром буква А? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.04.2010, 18:37
|
|||
|---|---|---|---|
|
|||
В поле- только цифры |
|||
|
#18+
BuryCommonerА зачем в TRANSLATE(s, 'A', ' 0123456789')='' вторым параметром буква А?Вместо 'A' может быть любой нецифровой символ. Нужно для транслирования пробела (первый символ 3-го аргумента), который может быть в середине цифровой последовательности, в нецифру. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.04.2010, 18:42
|
|||
|---|---|---|---|
|
|||
В поле- только цифры |
|||
|
#18+
Спасибо. Не заметил, что там пробел есть :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.04.2010, 19:00
|
|||
|---|---|---|---|
В поле- только цифры |
|||
|
#18+
Mark BarinsteinАлексей, WHERE TRANSLATE(s, 'A', ' 0123456789')='' Только так у меня почему-то не работает. У меня 9.7 с DB2_COMPATIBILITY_VECTOR=ORA ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.04.2010, 23:34
|
|||
|---|---|---|---|
|
|||
В поле- только цифры |
|||
|
#18+
kasyanov, Интересно - неужто с DB2_COMPATIBILITY_VECTOR=ORA у Translate параметры местами поменялись? Но вы же легко это можете проверить. Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.04.2010, 11:38
|
|||
|---|---|---|---|
В поле- только цифры |
|||
|
#18+
Victor Metelitsakasyanov, Интересно - неужто с DB2_COMPATIBILITY_VECTOR=ORA у Translate параметры местами поменялись? Но вы же легко это можете проверить. Код: plaintext 1. 2. 3. 4. 5. 6. Да, действительно поменялись! Ваш запрос возвращает на базе с DB2_COMPATIBILITY_VECTOR=ORA: 123-456 - 675432 A 1101.12 . На базе с пустым DB2_COMPATIBILITY_VECTOR - 123-456 675432 . 1101.12 Из документации: В Oracle: >──TRANSLATE──('char' , 'from_string' , 'to_string')──>< В DB2: >>-TRANSLATE--(--graphic-string-exp--,--to-string-exp--,--from-string-exp--> .-,--' '------. >--+-------------+--)------------------------------------------>< '-,--pad-char-' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.04.2010, 12:10
|
|||
|---|---|---|---|
|
|||
В поле- только цифры |
|||
|
#18+
kasyanovMark BarinsteinАлексей, WHERE TRANSLATE(s, 'A', ' 0123456789')='' Только так у меня почему-то не работает. У меня 9.7 с DB2_COMPATIBILITY_VECTOR=ORA Для DB2_COMPATIBILITY_VECTOR=ORA надо: WHERE TRANSLATE(trim(s), 'A', ' 0123456789') IS NULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.04.2010, 13:22
|
|||
|---|---|---|---|
В поле- только цифры |
|||
|
#18+
Mark BarinsteinkasyanovMark BarinsteinАлексей, WHERE TRANSLATE(s, 'A', ' 0123456789')='' Только так у меня почему-то не работает. У меня 9.7 с DB2_COMPATIBILITY_VECTOR=ORA Для DB2_COMPATIBILITY_VECTOR=ORA надо: WHERE TRANSLATE(trim(s), 'A', ' 0123456789') IS NULL Только второй и третий параметр еще местами поменять ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=43&mobile=1&tid=1602772]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
36ms |
get topic data: |
15ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 272ms |
| total: | 414ms |

| 0 / 0 |
