Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm thế nào để trích xuất mã vùng từ một số điện thoại với MySQL?

Giả sử chúng tôi có một danh sách các số điện thoại và từ đó chúng tôi muốn lấy mã vùng. Ví dụ, những mã vùng này là 3 chữ số đầu tiên của số điện thoại. Sử dụng hàm LEFT () từ MySQL cho việc này.

Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable
-> (
-> AreaCodes varchar(100)
-> );
Query OK, 0 rows affected (0.62 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Ở đây, giả sử chúng tôi đã bao gồm các số điện thoại -

mysql> insert into DemoTable values('90387568976') ;
Query OK, 1 row affected (0.20 sec)

mysql> insert into DemoTable values('90389097878' ;
Query OK, 1 row affected (0.23 sec)

mysql> insert into DemoTable values('56789008799');
Query OK, 1 row affected (0.10 sec)

mysql> insert into DemoTable values('45679008571');
Query OK, 1 row affected (0.23 sec)

mysql> insert into DemoTable values('45679008536);
Query OK, 1 row affected (0.12 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select *from DemoTable;

Điều này sẽ tạo ra kết quả sau -

+------------+
| AreaCodes  |
+------------+
| 90387568976|
| 90389097878|
| 56789008799|
| 45679008571|
| 45679008536|
+------------+
5 rows in set (0.00 sec)

Sau đây là truy vấn để lấy các mã vùng có sẵn -

mysql> select distinct LEFT(AreaCodes,4) from DemoTable

Điều này sẽ tạo ra kết quả sau -

+-------------------+
| left(AreaCodes,4) |
+-------------------+
| 9038              |
| 5678              |
| 4567              |
+-------------------+
3 rows in set (0.13 sec)