Как удалить все нули перед числом в запросе mysql

В одной таблице моего столбца номеров баз данных формат ниже. У меня есть строки, которые выглядят так: мне нужно удалить все нули из начального номера или начальной строки значения столбца.

Approval Table in this column name is ApprovalNumber

    SNO     ApprovalNumber
    ----      -----------
    1        0007890677
    2        0090780788
    3        767078
    4        009033
    5        05097
    6        005765078

Здесь, в этой таблице, мне нужно получить все записи и значения столбцов до того, как 0 должны быть удалены при выборе результата запроса. Мой ожидаемый результат ниже

   SNO     ApprovalNewNo
   ----      -----------
    1        7890677
    2        90780788
    3        767078
    4        9033
    5        5097
    6        5765078

Я пробовал код ниже, но не работал

SELECT LTRIM(ApprovalNumber,"0") AS ApprovalNewNo
FROM `ApprovalTable`  

Может ли кто-нибудь помочь в этом вопросе.

Полезно читать документы: dev.mysql.com/doc/refman/8.0/en/string-functions.html. LTRIM удаляет только пробелы и не принимает второй параметр в MySQL. Вместо этого вам нужно TRIM, как показано в ответе SelVazi. И в следующий раз, пожалуйста, не говорите «но не работает», а расскажите нам, что происходит технически. С вашим запросом вы должны получить сообщение об ошибке. Почему ты держишь это в секрете?

Thorsten Kettner 15.05.2023 13:13

Я думаю, реальный вопрос: почему вы храните числа в виде строк в своей базе данных?

Thorsten Kettner 15.05.2023 13:15

На заметку: разделителем строковых литералов в SQL является одинарная кавычка, а не двойная кавычка. Хотя MySQL допускает «0» при определенных условиях, это может сделать ваш запрос недействительным или привести к неожиданным результатам с другими настройками. Следовательно, лучше придерживаться правильных одинарных кавычек. Демо: dbfiddle.uk/XxAG-NJ4.

Thorsten Kettner 15.05.2023 13:30

Вы хотите получить результат в виде символьного или целочисленного типа данных?

jarlh 15.05.2023 16:18
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
4
64
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Используйте TRIM с параметром LEADING:

select *, TRIM(LEADING '0' FROM ApprovalNumber)
from mytable

Поскольку это не буквенно-цифровое число, добавление 0 к ApprovalNumber может работать:

select *, ApprovalNumber + 0
from mytable

Демо здесь

Все работает, спасибо от Ниранджана Кумара Чодама.

Niranjan Kumar Chowdam 16.05.2023 12:01

Другие вопросы по теме