Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

REGEXP를 사용하여 모든 레코드 뒤에 선택적 줄 끝을 일치시키시겠습니까?

<시간/>

먼저 테이블을 생성하겠습니다 -

mysql> 테이블 생성 DemoTable(EmployeeCode varchar(100));쿼리 OK, 영향을 받는 행 0개(0.56초)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable values('EMPLOYEE:100 John Smith');Query OK, 1행 영향(0.18초)mysql> insert into DemoTable values('EMPLOYEE:16537 Chris Brown');Query OK, 1 row 영향을 받은(0.10초)mysql> DemoTable 값에 삽입('EMPLOYEE:100 David Miller'); 쿼리 확인, 영향을 받는 1행(0.12초) mysql> DemoTable 값에 삽입('EMPLOYEE:100 23432 David Miller'), 쿼리 확인 , 영향을 받는 행 1개(0.20초)

select 문을 사용하여 테이블의 모든 레코드 표시 -

<미리>mysql>; *DemoTable에서 선택;

이것은 다음과 같은 출력을 생성합니다 -

+---------------------------------+| 직원 코드 |+---------------------------------+| 직원:100 존 스미스 || 직원:16537 크리스 브라운 || 직원:100 데이비드 밀러 || EMPLOYEE:100 23432 David Miller |+---------------------------------+4행 세트(0.00초) 

다음은 “EMPLOYEE:100 23432 David Miller” −에서 100 뒤에 23434와 같이 선택적 줄 끝과 일치시키는 쿼리입니다.

mysql> select *from DemoTable where EmployeeCode REGEXP "EMPLOYEE:100([^0-9]|$)";

이것은 다음과 같은 출력을 생성합니다 -

+---------------------------------+| 직원 코드 |+---------------------------------+| 직원:100 존 스미스 || 직원:100 데이비드 밀러 || EMPLOYEE:100 23432 David Miller |+---------------------------------+3행 세트(0.00초)