powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Проверить, является ли строка числом?
9 сообщений из 9, страница 1 из 1
Проверить, является ли строка числом?
    #39872359
Настаев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может и тупой вопрос, но в гугле есть примеры для сложных чисел. У меня просто проверяется один символ в строке. И нужно узнать, является ли он одним из чисел от 0 до 9. Как это сделать на MySql. В VB есть функция IsNumeric. А здесь как?
...
Рейтинг: 0 / 0
Проверить, является ли строка числом?
    #39872369
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В поле с числовым типом данных всегда число будет. Проверять нет смысла.
В поле со строковым типом можно регекспом проверить цифры. Можно в ряде случаев умножить проверяемое значение на единичку или с нулем сложить.
...
Рейтинг: 0 / 0
Проверить, является ли строка числом?
    #39872371
Настаев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle, выглядит так
Код: sql
1.
substring('Nokia 2310', 7, 1)


Я в цикле ищу позицию первой цифры. Может, есть более элегантные решения
...
Рейтинг: 0 / 0
Проверить, является ли строка числом?
    #39872377
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Настаев,

Может и есть, только пока не ясно, что решать. Исходная задача какая - проверить "на число" всю строку целиком или найти части строки, состоящие из цифр или проверить, есть ли в строке хотя бы одна цифра или что другое?
Посмотрите в сторону регекспов , может, всё же, подойдет.
...
Рейтинг: 0 / 0
Проверить, является ли строка числом?
    #39872392
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
WHERE LOCATE(SUBSTRING(table.field FROM @pos FOR 1), '0123456789')
...
Рейтинг: 0 / 0
Проверить, является ли строка числом?
    #39872564
Настаев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, спс. Не знал про функцию Locate.
...
Рейтинг: 0 / 0
Проверить, является ли строка числом?
    #39872593
andrey odegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT
  t.descr,
  MIN(NULLIF(LOCATE(d.d, t.descr), 0)) AS pos
FROM (SELECT 'Nokia 2310' AS descr UNION ALL
      SELECT 'iphone 4s' UNION ALL
      SELECT 'siemens c35') AS t,
(SELECT 0 AS d UNION ALL SELECT 1 UNION ALL
 SELECT 2 UNION ALL SELECT 3 UNION ALL
 SELECT 4 UNION ALL SELECT 5 UNION ALL
 SELECT 6 UNION ALL SELECT 7 UNION ALL
 SELECT 8 UNION ALL SELECT 9) AS d
GROUP BY t.descr;


DB Fiddle .
...
Рейтинг: 0 / 0
Проверить, является ли строка числом?
    #39872610
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НастаевНе знал про функцию Locate.Эквивалент функции INSTR(), но с иным порядком параметров.
https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_locate
https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_instr
...
Рейтинг: 0 / 0
Проверить, является ли строка числом?
    #39872713
Настаев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrey odegov, супер! :)
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Проверить, является ли строка числом?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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