반응형
mysql 함수의 영숫자 텍스트에서 선행 0을 자르는 방법
mysql 함수가 어떤 경우에 (있는 경우) 영숫자 텍스트 필드에서 선행 0을 자르기 위해?
값이 "00345ABC"인 필드는 "345ABC"를 반환해야합니다.
trim () 함수를 찾고 있습니다 .
좋습니다. 여기에 귀하의 예가 있습니다.
SELECT TRIM(LEADING '0' FROM myfield) FROM table
팁 :
값이 순전히 숫자 인 경우 간단한 캐스팅을 사용할 수도 있습니다.
SELECT * FROM my_table WHERE accountid = '00322994' * 1
실제로 변환됩니다.
SELECT * FROM my_table WHERE accountid = 322994
많은 경우에 충분한 솔루션이며 성능이 더 있다고 생각합니다. (경고-값 유형이 STRING에서 INT / FLOAT로 변경됨).
경우에 따라 일부 캐스팅 기능을 사용하는 것도 방법이 될 수 있습니다.
http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html
테이블의 전체 열 하나를 업데이트 할 다음 사용할 수 있습니다.
USE database_name;
UPDATE `table_name` SET `field` = TRIM(LEADING '0' FROM `field`) WHERE `field` LIKE '0%';
나는 당신이 이것으로 최선을 다할 생각입니다.
SELECT TRIM(LEADING '0' FROM myField)
TRIM ( LEADING
사용 사이 에 공간을 제거하십시오.
SELECT * FROM my_table WHERE TRIM(LEADING '0' FROM accountid ) = '00322994'
완벽 완벽합니다.
SELECT TRIM(LEADING '0' FROM myfield) FROM table
TRIM을 사용하면 후행, 선행 또는 모든 문자를 제거 할 수 있습니다. MySQL에서 TRIM 함수 사용에 대한 몇 가지 예 :
select trim(myfield) from (select ' test' myfield) t;
>> 'test'
select trim('0' from myfield) from (select '000000123000' myfield) t;
>> '123'
select trim(both '0' from myfield) from (select '000000123000' myfield) t;
>> '123'
select trim(leading '0' from myfield) from (select '000000123000' myfield) t;
>> '123000'
select trim(trailing '0' from myfield) from (select '000000123000' myfield) t;
>> '000000123'
선택한 양의 선행 / 후행 문자 만 제거 LEN 및 INSTR 함수를 조합하여 LEFT / RIGHT 함수를 분석합니다.
SELECT TRIM(LEADING '0' FROM *columnName*) FROM *tableName* ;
이것은 또한 작동합니다
반응형
'ProgramingTip' 카테고리의 다른 글
R에서 각각 고유 한 색상으로 여러 선 (데이터 시리즈) 플로팅 (0) | 2020.11.29 |
---|---|
NSUserDefaults에 NSMutablearray를 저장하는 방법 (0) | 2020.11.29 |
동일한 파일에 여러 클래스를 사용하는 것이 나쁜 습관입니까? (0) | 2020.11.29 |
작업 표시 줄 상단에 Windows Form을 전체 화면으로 표시하는 방법은 무엇입니까? (0) | 2020.11.29 |
MySQL Workbench에서 Blob을 직접 보는 방법 (0) | 2020.11.29 |