Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да премахнете цифри от края на низа с помощта на SQL

Това изглежда работи:

select left( concat('2Ga4la2009','1'), length(concat('2Ga4la2009','1')) - length(convert(convert(reverse(concat('2Ga4la2009','1')),unsigned),char)))

Concat('myvalue', '1') е за защита срещу числа, които завършват на 0s.

Обратното го обръща, така че номерът да е отпред.

Вътрешното преобразуване променя обърнатия низ в число, изпускайки крайните знаци.

Външното преобразуване превръща числовата част обратно в знаци, така че можете да получите дължината.

Сега знаете дължината на числовата част и можете да определите броя на знаците от оригиналната стойност, които да отрежете с функцията „left()“.

Грозно, но работи. :-)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. кешът на заявките не работи

  2. Защо заявките, изпълнявани от mysql workbench, отнемат много повече време, отколкото директното им изпълнение от mysql cli?

  3. MySQL:Мога ли да направя ляво присъединяване и да изтегля само един ред от таблицата за присъединяване?

  4. MySQL пропуска първите 10 резултата

  5. Как да свържа NetBeans към MySQL база данни?