![]() |
![]() |
![]() |
|
Перевод строки в число в запросе | ☑ | ||
---|---|---|---|---|
0
Rebelx
14.12.09
✎
12:35
|
Давайте придумаем самый простой вариант.
уже было: v8: Выразить строку как число и обратно мой вариант: ВЫБРАТЬ Строка, (Разряд1 + Разряд2 + Разряд3 + Разряд4 + Разряд5 + Разряд6) / Кратность КАК Число ИЗ ( ВЫБРАТЬ &Данные как Строка, ВЫБОР КОГДА &Данные ПОДОБНО "%0" ТОГДА 0 КОГДА &Данные ПОДОБНО "%1" ТОГДА 1 КОГДА &Данные ПОДОБНО "%2" ТОГДА 2 КОГДА &Данные ПОДОБНО "%3" ТОГДА 3 КОГДА &Данные ПОДОБНО "%4" ТОГДА 4 КОГДА &Данные ПОДОБНО "%5" ТОГДА 5 КОГДА &Данные ПОДОБНО "%6" ТОГДА 6 КОГДА &Данные ПОДОБНО "%7" ТОГДА 7 КОГДА &Данные ПОДОБНО "%8" ТОГДА 8 КОГДА &Данные ПОДОБНО "%9" ТОГДА 9 КОГДА (&Данные ПОДОБНО "%_" И &Данные ПОДОБНО "%[^0-9 ]") ТОГДА NULL ИНАЧЕ 0 КОНЕЦ КАК Разряд1, ВЫБОР КОГДА &Данные ПОДОБНО "%0_" ТОГДА 0 КОГДА &Данные ПОДОБНО "%1_" ТОГДА 10 КОГДА &Данные ПОДОБНО "%2_" ТОГДА 20 КОГДА &Данные ПОДОБНО "%3_" ТОГДА 30 КОГДА &Данные ПОДОБНО "%4_" ТОГДА 40 КОГДА &Данные ПОДОБНО "%5_" ТОГДА 50 КОГДА &Данные ПОДОБНО "%6_" ТОГДА 60 КОГДА &Данные ПОДОБНО "%7_" ТОГДА 70 КОГДА &Данные ПОДОБНО "%8_" ТОГДА 80 КОГДА &Данные ПОДОБНО "%9_" ТОГДА 90 КОГДА (&Данные ПОДОБНО "%__" И &Данные ПОДОБНО "%[^0-9 ]_") ТОГДА NULL ИНАЧЕ 0 КОНЕЦ КАК Разряд2, ВЫБОР КОГДА &Данные ПОДОБНО "%0__" ТОГДА 0 КОГДА &Данные ПОДОБНО "%1__" ТОГДА 100 КОГДА &Данные ПОДОБНО "%2__" ТОГДА 200 КОГДА &Данные ПОДОБНО "%3__" ТОГДА 300 КОГДА &Данные ПОДОБНО "%4__" ТОГДА 400 КОГДА &Данные ПОДОБНО "%5__" ТОГДА 500 КОГДА &Данные ПОДОБНО "%6__" ТОГДА 600 КОГДА &Данные ПОДОБНО "%7__" ТОГДА 700 КОГДА &Данные ПОДОБНО "%8__" ТОГДА 800 КОГДА &Данные ПОДОБНО "%9__" ТОГДА 900 КОГДА (&Данные ПОДОБНО "%___" И &Данные ПОДОБНО "%[^0-9 ]__") ТОГДА NULL ИНАЧЕ 0 КОНЕЦ КАК Разряд3, ВЫБОР КОГДА &Данные ПОДОБНО "%0___" ТОГДА 0 КОГДА &Данные ПОДОБНО "%1___" ТОГДА 1000 КОГДА &Данные ПОДОБНО "%2___" ТОГДА 2000 КОГДА &Данные ПОДОБНО "%3___" ТОГДА 3000 КОГДА &Данные ПОДОБНО "%4___" ТОГДА 4000 КОГДА &Данные ПОДОБНО "%5___" ТОГДА 5000 КОГДА &Данные ПОДОБНО "%6___" ТОГДА 6000 КОГДА &Данные ПОДОБНО "%7___" ТОГДА 7000 КОГДА &Данные ПОДОБНО "%8___" ТОГДА 8000 КОГДА &Данные ПОДОБНО "%9___" ТОГДА 9000 КОГДА (&Данные ПОДОБНО "%____" И &Данные ПОДОБНО "%[^0-9 ]___") ТОГДА NULL ИНАЧЕ 0 КОНЕЦ КАК Разряд4, ВЫБОР КОГДА &Данные ПОДОБНО "%0____" ТОГДА 0 КОГДА &Данные ПОДОБНО "%1____" ТОГДА 10000 КОГДА &Данные ПОДОБНО "%2____" ТОГДА 20000 КОГДА &Данные ПОДОБНО "%3____" ТОГДА 30000 КОГДА &Данные ПОДОБНО "%4____" ТОГДА 40000 КОГДА &Данные ПОДОБНО "%5____" ТОГДА 50000 КОГДА &Данные ПОДОБНО "%6____" ТОГДА 60000 КОГДА &Данные ПОДОБНО "%7____" ТОГДА 70000 КОГДА &Данные ПОДОБНО "%8____" ТОГДА 80000 КОГДА &Данные ПОДОБНО "%9____" ТОГДА 90000 КОГДА (&Данные ПОДОБНО "%_____" И &Данные ПОДОБНО "%[^0-9 ]____") ТОГДА NULL ИНАЧЕ 0 КОНЕЦ КАК Разряд5, ВЫБОР КОГДА &Данные ПОДОБНО "%0_____" ТОГДА 000000 КОГДА &Данные ПОДОБНО "%1_____" ТОГДА 100000 КОГДА &Данные ПОДОБНО "%2_____" ТОГДА 200000 КОГДА &Данные ПОДОБНО "%3_____" ТОГДА 300000 КОГДА &Данные ПОДОБНО "%4_____" ТОГДА 400000 КОГДА &Данные ПОДОБНО "%5_____" ТОГДА 500000 КОГДА &Данные ПОДОБНО "%6_____" ТОГДА 600000 КОГДА &Данные ПОДОБНО "%7_____" ТОГДА 700000 КОГДА &Данные ПОДОБНО "%8_____" ТОГДА 800000 КОГДА &Данные ПОДОБНО "%9_____" ТОГДА 900000 КОГДА (&Данные ПОДОБНО "%______" И &Данные ПОДОБНО "%[^0-9 ]_____") ТОГДА NULL ИНАЧЕ 0 КОНЕЦ КАК Разряд6, ВЫБОР КОГДА &Данные ПОДОБНО "[0-9][0-9][0-9][0-9][0-9][0-9]" ТОГДА 1 КОГДА &Данные ПОДОБНО "[0-9][0-9][0-9][0-9][0-9] " ТОГДА 10 КОГДА &Данные ПОДОБНО "[0-9][0-9][0-9][0-9] " ТОГДА 100 КОГДА &Данные ПОДОБНО "%[0-9][0-9][0-9] " ТОГДА 1000 КОГДА &Данные ПОДОБНО "%[0-9][0-9] " ТОГДА 10000 КОГДА &Данные ПОДОБНО "%[0-9] " ТОГДА 100000 ИНАЧЕ 1 КОНЕЦ КАК Кратность ) КАК СтрокаВЧисло |
|||
1
Axel2009
14.12.09
✎
12:47
|
этот код призван чтобы считать следующее:
1а3п6р? |
|||
2
Rebelx
14.12.09
✎
12:50
|
(1)нет, только "123", "123 ", " 123"
|
|||
3
hhhh
14.12.09
✎
12:54
|
(2) ну вроде он "111" выдаст. Или нет?
|
|||
4
Rebelx
14.12.09
✎
13:10
|
(3) это смотря что на вход дать
|
|||
5
Rebelx
24.12.09
✎
11:00
|
закладка, еще вариант:
v8: Как в запросе отобрать число как строку? |
|||
6
also
24.12.09
✎
11:02
|
(5) 19 пост там посмотри
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |