Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#18+
Добрый день! Необходимо написать запрос, условие которого будет возвращать истину для всех записей, у которых конкретное поле содержит значения, состоящие только из цифр. Код: plaintext 1. 2. 3. Вообще-то это нужно чтобы сделать check constraint только на цифры Алексей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2010, 17:00 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#18+
В Оракле оказалось так: Код: plaintext 1. 2. 3. А в DB2 как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2010, 17:22 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#18+
Ребята с форума Оракла предложили select * from digittest where TRANSLATE(s,'A0123456789','A') IS NULL; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2010, 17:39 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#18+
Алексей, WHERE TRANSLATE(s, 'A', ' 0123456789')='' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2010, 18:03 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#18+
Можно через XQuery: Код: plaintext 1. А зачем в TRANSLATE(s, 'A', ' 0123456789')='' вторым параметром буква А? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2010, 18:32 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#18+
BuryCommonerА зачем в TRANSLATE(s, 'A', ' 0123456789')='' вторым параметром буква А?Вместо 'A' может быть любой нецифровой символ. Нужно для транслирования пробела (первый символ 3-го аргумента), который может быть в середине цифровой последовательности, в нецифру. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2010, 18:37 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#18+
Спасибо. Не заметил, что там пробел есть :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2010, 18:42 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#18+
Mark BarinsteinАлексей, WHERE TRANSLATE(s, 'A', ' 0123456789')='' Только так у меня почему-то не работает. У меня 9.7 с DB2_COMPATIBILITY_VECTOR=ORA ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2010, 19:00 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#18+
kasyanov, Интересно - неужто с DB2_COMPATIBILITY_VECTOR=ORA у Translate параметры местами поменялись? Но вы же легко это можете проверить. Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2010, 23:34 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#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, 11:38 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#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, 12:10 |
|
||
|
В поле- только цифры
|
|||
|---|---|---|---|
|
#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 Только второй и третий параметр еще местами поменять ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2010, 13:22 |
|
||
|
|

start [/forum/topic.php?fid=43&tid=1602772]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
71ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 177ms |

| 0 / 0 |
