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

MySQL에서 전체 열 값에서 특정 접두사를 제거하고 업데이트하는 방법은 무엇입니까?

<시간/>

MySQL UPDATE 문과 함께 컬럼에 TRIM() 함수를 적용하면 된다. 아래 예를 보면 더 명확해집니다.

예시

다음과 같이 'Department' 열의 모든 값을 갖는 접두사 'Dept.'가 있는 'Employee' 테이블이 있다고 가정합니다. -

mysql> Select * from Employee;
+------+----------------+------------+----------------------+
| Id   | Name           | Address    | Department           |
+------+----------------+------------+----------------------+
| 100  | Raman          | Delhi      | IT Dept.             |
| 101  | Mohan          | Haryana    | History Dept.        |
| 102  | Shyam          | Chandigarh | ENGLISH Dept.        |
| 103  | Sukhjeet Singh | Patiala    | Computer Engg. Dept. |
| 104  | Bimal Roy      | Calcutta   | Computer Engg. Dept. |
+------+----------------+------------+----------------------+
5 rows in set (0.01 sec)

이제 아래 쿼리는 Department 열에서 접두사 'Dept.'를 제거하고 테이블도 업데이트합니다.

mysql> Update Employee set Department = TRIM(Trailing 'Dept.' FROM Department);
Query OK, 5 rows affected (0.10 sec)
Rows matched: 5 Changed: 5 Warnings: 0

mysql> Select * from Employee;
+------+----------------+------------+-----------------+
| Id   | Name           | Address    | Department      |
+------+----------------+------------+-----------------+
| 100  | Raman          | Delhi      | IT              |
| 101  | Mohan          | Haryana    | History         |
| 102  | Shyam          | Chandigarh | ENGLISH         |
| 103  | Sukhjeet Singh | Patiala    | Computer Engg.  |
| 104  | Bimal Roy      | Calcutta   | Computer Engg.  |
+------+----------------+------------+-----------------+
5 rows in set (0.00 sec)

위의 결과 집합은 열 값에 접두사 'Dept.'가 없음을 보여줍니다.