Cơ sở dữ liệu của chúng tôi có một bảng tên là
5 với dữ liệu trong các cộtCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
6,Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
7 vàCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
8idnamepart_number1Harley Davidson x1245-AC2-252Honda CB750-x012-GK8-A83Suzuki Hayabusa X798-25-28Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Chúng tôi muốn thay đổi số bộ phận của xe máy bằng cách thay thế tất cả các ký tự gạch nối bằng dấu gạch chéo về phía trước
Giải pháp 1
SELECT name, REPLACE[ part_number, '-', '/' ] as new_part_number FROM motorbike_sale;
Truy vấn này trả về danh sách tên xe máy và số bộ phận mới. Lưu ý các dấu gạch chéo về phía trước đã thay thế các dấu gạch nối trong số bộ phận
namenew_ part_numberHarley Davidson x1245/AC2/25Honda CB750-x012/GK8/A8Suzuki Hayabusa X798/25/28Thảo luận
Sử dụng hàm REPLACE[] của MySQL để thay thế một chuỗi con [i. e. từ, ký tự, v.v. ] với một chuỗi con khác và trả về chuỗi đã thay đổi. Hàm này có ba đối số
- Chuỗi để thay đổi. [Trong ví dụ của chúng tôi, đó là cột
8. ]
Code language: SQL [Structured Query Language] [sql]CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
- Chuỗi con để thay thế [i. e. nhân vật '-']
- Chuỗi con để chèn [i. e. nhân vật '/']
Lưu ý rằng hàm này thay thế tất cả các lần xuất hiện của chuỗi con trong chuỗi hoặc cột đã cho. Trong ví dụ của chúng tôi, mỗi part_number chứa ba ký tự gạch nối, mỗi ký tự được thay thế bằng dấu gạch chéo
Trong ví dụ tiếp theo, chúng tôi sẽ thay thế tất cả các phiên bản của 'x' trong tên xe máy bằng '10'
Giải pháp 2
SELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;
Truy vấn này sử dụng mệnh đề WHERE để lọc các bản ghi cho các hàng có giá trị id từ 2 trở lên
Để ý tên xe máy Honda đổi từ 'x' thành '10' nhưng tên xe máy Suzuki không đổi. Tại sao không? . Do đó, 'x' không giống với 'X'. Trong ví dụ này, 'x' đã được thay thế bằng '10', nhưng 'X' không thay đổi
NameDescriptionstrA chuỗi. find_stringMột chuỗi xuất hiện một hoặc nhiều lần trong chuỗi str. replace_withA string sẽ thay thế mỗi khi nó tìm thấy find_string trong str
Sơ đồ cú pháp
Phiên bản MySQL. 5. 6
Trình chiếu video
Trình duyệt của bạn không hỗ trợ video HTML5
Ví dụ về hàm REPLACE[] của MySQL
Câu lệnh MySQL sau thay thế tất cả các lần xuất hiện của 'K' bằng 'SA' trong cột quốc gia từ nhà xuất bản bảng cho các hàng đó, trong đó giá trị cột của quốc gia là Vương quốc Anh
Tóm lược. trong hướng dẫn này, bạn sẽ học cách sử dụng câu lệnh MySQL
1 để chèn hoặc cập nhật dữ liệu trong các bảng cơ sở dữ liệuCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Giới thiệu về câu lệnh MySQL CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
Code language: SQL [Structured Query Language] [sql]
1
CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
Câu lệnh MySQL
1 là phần mở rộng của Tiêu chuẩn SQL. Câu lệnh MySQLCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
1 hoạt động như sau
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Code language: SQL [Structured Query Language] [sql]
Bước 1. Chèn một hàng mới vào bảng, nếu xảy ra lỗi khóa trùng lặp
Bước 2. Nếu việc chèn không thành công do xảy ra lỗi khóa trùng lặp
- Xóa hàng xung đột gây ra lỗi khóa trùng lặp khỏi bảng
- Chèn lại hàng mới vào bảng
Để xác định xem hàng mới đã tồn tại trong bảng hay chưa, MySQL sử dụng chỉ mục
5 hoặcCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
6. Nếu bảng không có một trong các chỉ mục này, thìCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
1 hoạt động giống như câu lệnhCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
8Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Để sử dụng câu lệnh
1, bạn cần có ít nhất cả hai đặc quyềnCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
8 vàCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
SELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;21 cho bảng
Lưu ý rằng MySQL có
1 hàm chuỗi không phải là câu lệnhCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
1 được đề cập trong hướng dẫn nàyCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Sử dụng MySQL CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
Code language: SQL [Structured Query Language] [sql]
1 để chèn một hàng mới
CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
Sau đây minh họa cú pháp của câu lệnh
1Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
SELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;7
Nó tương tự như câu lệnh
8 ngoại trừ từ khóaCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
1Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Hãy cùng xem ví dụ sau về cách sử dụng câu lệnh
1 để xem nó hoạt động như thế nàoCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Đầu tiên, tạo một bảng mới tên là
SELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;29 như sau
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Code language: SQL [Structured Query Language] [sql]
Tiếp theo, chèn một số hàng vào bảng
SELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;29
SELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;2
Sau đó, truy vấn dữ liệu từ bảng
SELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;29 để xác minh thao tác chèn
6Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Sau đó, sử dụng câu lệnh
1 để cập nhật dân số của thành phốCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
63 thànhCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
64.Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
0Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Cuối cùng, hãy truy vấn lại dữ liệu của bảng
SELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;29 để xác minh sự thay thế
6Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Giá trị trong cột
66 bây giờ làCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
67. Câu lệnhCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
1 hoạt động như sau.Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
- Đầu tiên, câu lệnh
1 đã cố gắng chèn một hàng mới vào bảng
Code language: SQL [Structured Query Language] [sql]CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
SELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;
29. Việc chèn không thành công vì id 2 đã tồn tại trong bảngSELECT id, REPLACE[ name, 'x', '10' ] as new_name, part_number FROM motorbike_sale WHERE id>1;
29 - Sau đó, câu lệnh
1 đã xóa hàng có id 2 và chèn một hàng mới có cùng id 2 và dân số
Code language: SQL [Structured Query Language] [sql]CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
64. Vì không có giá trị nào được chỉ định cho cột tên nên nó được đặt thành
Code language: SQL [Structured Query Language] [sql]CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
67
Code language: SQL [Structured Query Language] [sql]CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Sử dụng câu lệnh MySQL CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
Code language: SQL [Structured Query Language] [sql]
1 để cập nhật một hàng
CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
Sau đây minh họa cách sử dụng câu lệnh
1 để cập nhật dữ liệuCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
4Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Câu lệnh này giống như câu lệnh
07 ngoại trừ từ khóaCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
1. Ngoài ra, nó không có mệnh đềCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
09
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Code language: SQL [Structured Query Language] [sql]
Ví dụ này sử dụng câu lệnh
1 để cập nhật dân số của thành phốCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
61 thànhCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
62Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
1Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Không giống như câu lệnh
07, nếu bạn không chỉ định giá trị cho cột trong mệnh đềCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
64, thì câu lệnhCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
1 sẽ sử dụng giá trị mặc định của cột đóCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
6Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Sử dụng MySQL CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
Code language: SQL [Structured Query Language] [sql]
1 để chèn dữ liệu từ câu lệnh CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
Code language: SQL [Structured Query Language] [sql]
67
CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
CREATE TABLE cities [
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR[50],
population INT NOT NULL
];
Phần sau đây minh họa câu lệnh
1 chèn dữ liệu vào một bảng với dữ liệu đến từ một truy vấnCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
9Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Lưu ý rằng dạng câu lệnh
1 này tương tự như câu lệnhCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
40Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Câu lệnh sau sử dụng câu lệnh
41 để sao chép một hàng trong cùng một bảngCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
0Code language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];
Trong hướng dẫn này, bạn đã học các dạng khác nhau của câu lệnh MySQL
1 để chèn hoặc cập nhật dữ liệu trong bảngCode language: SQL [Structured Query Language] [sql]
CREATE TABLE cities [ id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR[50], population INT NOT NULL ];