Kiểm tra xem kết quả truy vấn sql có trống không php

Xin chào. Tôi đã viết câu lệnh sql này trong hoạt động truy vấn thực thi. Bây giờ hoạt động này trả về một dữ liệu
Tôi muốn kiểm tra xem bảng sql có trống hay không. Làm cách nào tôi có thể áp dụng kiểm tra Nếu trên kết quả của truy vấn trên?

Đọc "Cách cài đặt MySQL và bắt đầu" về cách cài đặt, tùy chỉnh và bắt đầu với MySQL

Tóm tắt các lệnh MySQL được sử dụng trong Hướng dẫn này

Để biết cú pháp chi tiết, hãy xem hướng dẫn sử dụng MySQL "Cú pháp câu lệnh SQL" @ http. // nhà phát triển. mysql. com/doc/refman/5. 5/en/sql-cú pháp. html

Một ví dụ cho người mới bắt đầu (Nhưng KHÔNG dành cho người giả)

Một máy chủ cơ sở dữ liệu MySQL chứa nhiều cơ sở dữ liệu (hoặc lược đồ). Mỗi cơ sở dữ liệu bao gồm một hoặc nhiều bảng. Một bảng được tạo thành từ các cột (hoặc trường) và hàng (bản ghi)

Các từ khóa và lệnh SQL KHÔNG phân biệt chữ hoa chữ thường. Để rõ ràng, chúng được hiển thị bằng chữ hoa. Tên hoặc mã định danh (tên cơ sở dữ liệu, tên bảng, tên cột, v.v. ) phân biệt chữ hoa chữ thường trong một số hệ thống, nhưng không phân biệt chữ hoa chữ thường trong các hệ thống khác. Do đó, cách tốt nhất là coi số nhận dạng là phân biệt chữ hoa chữ thường

HIỂN THỊ CƠ SỞ DỮ LIỆU

Bạn có thể sử dụng

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
6 để liệt kê tất cả các cơ sở dữ liệu hiện có trong máy chủ

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
........

Cơ sở dữ liệu "

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
7", "
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
8" và "
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
9" là cơ sở dữ liệu hệ thống được sử dụng nội bộ bởi MySQL. Cơ sở dữ liệu "_______5_______0" được cung cấp trong quá trình cài đặt để bạn thử nghiệm

Hãy để chúng tôi bắt đầu với một ví dụ đơn giản - cơ sở dữ liệu bán sản phẩm. Một cơ sở dữ liệu bán sản phẩm thường bao gồm nhiều bảng, e. g. , sản phẩm, khách hàng, nhà cung cấp, đơn đặt hàng, thanh toán, nhân viên, v.v. Hãy gọi cơ sở dữ liệu của chúng ta là "______5_______1" (lấy cảm hứng từ cơ sở dữ liệu mẫu Northwind Trader của Microsoft). Chúng ta sẽ bắt đầu với bảng đầu tiên có tên "_______5_______2" với các cột sau (có kiểu dữ liệu như đã chỉ ra) và các hàng

cơ sở dữ liệu. Gió nam
Bàn. ID sản phẩm
INTmã sản phẩm
tên CHAR(3)
VARCHAR(30)số lượng
INTprice
DECIMAL(10,2)1001PENBút Đỏ50001. 231002PENBút Xanh80001. 251003PENBút Đen20001. 251004PECBút chì 2B100000. 481005PECBút chì 2H80000. 49

Tạo và xóa cơ sở dữ liệu - CREATE DATABASE and DROP DATABASE

Bạn có thể tạo cơ sở dữ liệu mới bằng lệnh SQL "______5_______3"; . Bạn có thể tùy chọn áp dụng điều kiện "_______5_______5" hoặc "

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
6" cho các lệnh này. Ví dụ,

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)

QUAN TRỌNG. Sử dụng các lệnh SQL

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
7 (và
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
8) hết sức cẩn thận, vì các thực thể đã xóa không thể khôi phục được. KHÔNG CÓ HOÀN TÁC

HIỂN THỊ TẠO CƠ SỞ DỮ LIỆU

Các lệnh

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
9 sử dụng một số giá trị mặc định. Bạn có thể gõ "
mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
0" để hiển thị toàn bộ lệnh và kiểm tra các giá trị mặc định này. Chúng tôi sử dụng
mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
1 (thay vì
mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
2) để hiển thị kết quả theo chiều dọc. (Hãy thử so sánh kết quả đầu ra của
mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
2 và
mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
1. )

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
Số nhận dạng trích dẫn ngược (`tên`)

Các tên hoặc mã định danh không được trích dẫn (chẳng hạn như tên cơ sở dữ liệu, tên bảng và tên cột) không được chứa các ký tự trống và ký tự đặc biệt hoặc trùng với các từ khóa MySQL (chẳng hạn như

mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
5 và
mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
6). Bạn có thể bao gồm các khoảng trống và ký tự đặc biệt hoặc sử dụng từ khóa MySQL làm định danh bằng cách kèm theo một cặp trích dẫn ngược, ở dạng
mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
7

Để chắc chắn, lệnh

mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
8 trích dẫn lại tất cả các mã định danh, như được minh họa trong ví dụ trên

Nhận xét và Phiên bản Nhận xét

Nhận xét nhiều dòng của MySQL được đính kèm trong

mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
9 và
mysql> SELECT * FROM products 
       WHERE (price BETWEEN 1.0 AND 2.0) AND (quantity BETWEEN 1000 AND 2000);
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
0;

mysql> SELECT * FROM products 
       WHERE (price BETWEEN 1.0 AND 2.0) AND (quantity BETWEEN 1000 AND 2000);
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
3 được gọi là nhận xét phiên bản, sẽ chỉ được chạy nếu máy chủ bằng hoặc cao hơn số phiên bản này
mysql> SELECT * FROM products 
       WHERE (price BETWEEN 1.0 AND 2.0) AND (quantity BETWEEN 1000 AND 2000);
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
4. Để kiểm tra phiên bản máy chủ MySQL của bạn, hãy đưa ra truy vấn "
mysql> SELECT * FROM products 
       WHERE (price BETWEEN 1.0 AND 2.0) AND (quantity BETWEEN 1000 AND 2000);
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
5"

Đặt cơ sở dữ liệu mặc định - SỬ DỤNG

Lệnh "

mysql> SELECT * FROM products 
       WHERE (price BETWEEN 1.0 AND 2.0) AND (quantity BETWEEN 1000 AND 2000);
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
6" đặt một cơ sở dữ liệu cụ thể làm cơ sở dữ liệu mặc định (hoặc hiện tại). Bạn có thể tham khảo trực tiếp một bảng trong cơ sở dữ liệu mặc định bằng cách sử dụng
mysql> SELECT * FROM products 
       WHERE (price BETWEEN 1.0 AND 2.0) AND (quantity BETWEEN 1000 AND 2000);
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
7. Nhưng bạn cần sử dụng
mysql> SELECT * FROM products 
       WHERE (price BETWEEN 1.0 AND 2.0) AND (quantity BETWEEN 1000 AND 2000);
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
8 đủ điều kiện để tham chiếu một bảng KHÔNG có trong cơ sở dữ liệu mặc định

Trong ví dụ của chúng tôi, chúng tôi có một cơ sở dữ liệu có tên "

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
1" với một bảng có tên "
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2". Nếu chúng tôi phát hành "
mysql> SELECT * FROM products WHERE productCode IS NULL;
Empty set (0.00 sec)
1" để đặt
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
1 làm cơ sở dữ liệu mặc định, chúng tôi chỉ cần gọi bảng là "
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2". Mặt khác, chúng ta cần tham chiếu bảng là "
mysql> SELECT * FROM products WHERE productCode IS NULL;
Empty set (0.00 sec)
4"

Để hiển thị cơ sở dữ liệu mặc định hiện tại, hãy ra lệnh "______38_______5"

Tạo và xóa bảng - CREATE TABLE và DROP TABLE

Bạn có thể tạo một bảng mới trong cơ sở dữ liệu mặc định bằng cách sử dụng lệnh "_______38_______6" và "

mysql> SELECT * FROM products WHERE productCode IS NULL;
Empty set (0.00 sec)
7". Bạn cũng có thể áp dụng điều kiện "_______5_______5" hoặc "
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
6". Để tạo một bảng, bạn cần xác định tất cả các cột của nó bằng cách cung cấp tên, loại và thuộc tính của các cột

Hãy tạo một bảng "

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2" trong cơ sở dữ liệu của chúng tôi "
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
1"

giải thích

Chúng tôi xác định 5 cột trong bảng

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2.
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
3,
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
4,
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
5,
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
6 và
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
7. các loại là

  • SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    3 is
    SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    9 - số nguyên không âm
  • SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    4 là
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    01 - một chuỗi chữ và số có độ dài cố định gồm 3 ký tự
  • SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    5 là
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    03 - một chuỗi có độ dài thay đổi lên đến 30 ký tự
    Chúng tôi sử dụng chuỗi có độ dài cố định cho
    SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    4, vì chúng tôi giả định rằng
    SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    4 chứa chính xác 3 ký tự. Mặt khác, chúng tôi sử dụng chuỗi có độ dài thay đổi cho
    SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    5, vì độ dài của nó thay đổi -
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    07 hiệu quả hơn
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    08
  • SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    6 cũng là
    SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    9 (số nguyên không âm)
  • SELECT .. FROM tableName
    WHERE criteria
    ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
    
    7 là
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    12- một số thập phân có 2 chữ số thập phân
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    13 là chính xác (được biểu thị dưới dạng số nguyên có dấu thập phân cố định). Mặt khác,
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    14 và
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    15 (số thực) không chính xác và chỉ xấp xỉ.
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    13 loại được khuyến nghị cho tiền tệ

Thuộc tính "_______12_______17" xác định rằng cột không được chứa giá trị

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
18.
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
18 là một giá trị đặc biệt cho biết "không có giá trị", "giá trị không xác định" hoặc "giá trị bị thiếu". Trong trường hợp của chúng tôi, các cột này sẽ có một giá trị phù hợp. Chúng tôi cũng đặt giá trị mặc định của các cột. Cột sẽ nhận giá trị mặc định nếu không có giá trị nào được chỉ định trong quá trình tạo bản ghi

Chúng tôi đặt cột

SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
3 làm cái gọi là khóa chính. Giá trị của cột khóa chính phải là duy nhất. Mỗi bảng sẽ chứa một khóa chính. Điều này đảm bảo rằng mọi hàng có thể được phân biệt với các hàng khác. Bạn có thể chỉ định một cột hoặc một tập hợp các cột (e. g. ,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
21 và
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
22) làm khóa chính. Một chỉ mục được xây dựng tự động trên cột khóa chính để hỗ trợ tìm kiếm nhanh. Khóa chính cũng được sử dụng làm tham chiếu cho các bảng khác

Chúng tôi đặt cột

SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
3 thành
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
24. với giá trị bắt đầu mặc định là 1. Khi bạn chèn một hàng có
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
18 (được đề xuất) (hoặc 0 hoặc giá trị bị thiếu) cho cột
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
24, giá trị tối đa của cột đó cộng với 1 sẽ được chèn vào. Bạn cũng có thể chèn một giá trị hợp lệ vào cột
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
24, bỏ qua phần tăng tự động

Chèn hàng - INSERT INTO

Hãy lấp đầy bảng "______5_______2" của chúng ta bằng các hàng. Chúng tôi đặt

SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
3 của bản ghi đầu tiên thành 1001 và sử dụng
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
24 cho phần còn lại của bản ghi bằng cách chèn
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
18 hoặc với giá trị cột bị thiếu. Lưu ý rằng các chuỗi phải được đặt trong một cặp dấu ngoặc đơn (hoặc dấu ngoặc kép)

CHÈN VÀO Cú pháp

Chúng ta có thể sử dụng câu lệnh

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
32 để chèn một hàng mới với tất cả các giá trị của cột, sử dụng cú pháp sau

Bạn cần liệt kê các giá trị theo cùng thứ tự mà các cột được xác định trong

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
33, được phân tách bằng dấu phẩy. Đối với các cột kiểu dữ liệu chuỗi (_______12_______08,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
07) thì kèm theo giá trị bằng một cặp dấu nháy đơn (hoặc nháy kép). Đối với các cột có kiểu dữ liệu số (
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
36,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
13,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
14,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
15), chỉ cần đặt số

Bạn cũng có thể chèn nhiều hàng vào một câu lệnh

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
32

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...

Để chỉ chèn một hàng có giá trị trên các cột đã chọn, hãy sử dụng

Các cột còn lại sẽ nhận giá trị mặc định, chẳng hạn như

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
24, mặc định hoặc
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
18

Truy vấn cơ sở dữ liệu - CHỌN

Nhiệm vụ phổ biến, quan trọng và phức tạp nhất là truy vấn cơ sở dữ liệu để tìm tập hợp con dữ liệu đáp ứng nhu cầu của bạn - bằng lệnh

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43. Lệnh
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43 có cú pháp như sau

Ví dụ như,

CHỌN không có bảng

Bạn cũng có thể phát hành

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43 mà không cần bàn. Ví dụ: bạn có thể
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43 một biểu thức hoặc đánh giá một hàm dựng sẵn

Toán tử so sánh

Đối với các số (

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
36,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
13,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
14), bạn có thể sử dụng các toán tử so sánh.
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
50 (bằng),
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
51 hoặc
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
52 (không bằng),
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
53 (lớn hơn),
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
54 (nhỏ hơn),
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
55 (lớn hơn hoặc bằng),
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
56 (nhỏ hơn hoặc bằng), để so sánh hai số. Ví dụ,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
57,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
58

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)

THẬN TRỌNG. Không so sánh các giá trị bằng nhau của

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
14 (số thực) (
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
50 hoặc
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
51), vì chúng không chính xác. Mặt khác,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
13 là chính xác

Đối với chuỗi, bạn cũng có thể sử dụng

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
50,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
51,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
53,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
54,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
55,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
56 để so sánh hai chuỗi (e. g. ,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
69 Thứ tự của chuỗi phụ thuộc vào cái gọi là đối chiếu được chọn. Ví dụ,

Khớp mẫu chuỗi - THÍCH và KHÔNG THÍCH

Đối với các chuỗi, ngoài việc khớp hoàn toàn bằng cách sử dụng các toán tử như

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
50 và
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
51, chúng ta có thể thực hiện khớp mẫu bằng cách sử dụng toán tử
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
72 (hoặc
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
73) với các ký tự đại diện. Ký tự đại diện
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
74 khớp với bất kỳ ký tự đơn nào; . Ví dụ,

  • mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    76 khớp với các chuỗi bắt đầu bằng
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    77;
  • mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    78 khớp với các chuỗi kết thúc bằng
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    79;
  • mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    80 khớp với các chuỗi chứa
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    81;
  • mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    82 khớp với các chuỗi chứa chính xác ba ký tự;
  • mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    83 khớp với các chuỗi bắt đầu bằng
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    84, theo sau là bất kỳ ký tự đơn nào, theo sau là
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    85, theo sau là 0 hoặc nhiều ký tự

MySQL cũng hỗ trợ khớp biểu thức chính quy thông qua toán tử

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
86

toán tử số học

Bạn có thể thực hiện các phép toán số học trên các trường số bằng các toán tử số học, như được lập bảng dưới đây

Toán tử Mô tả+Cộng-Trừ*Nhân/chia DIVInteger Division%Modulus (Phần dư)
Toán tử logic - AND, OR, NOT, XOR

Bạn có thể kết hợp nhiều điều kiện với toán tử boolean

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
87,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
88,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
89. Bạn cũng có thể đảo ngược điều kiện bằng cách sử dụng toán tử
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
90. Ví dụ như,

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
VÀO, KHÔNG VÀO

Bạn có thể chọn từ các phần tử của một tập hợp với toán tử

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
91 (hoặc
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
92). Điều này dễ dàng và rõ ràng hơn so với biểu thức
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
93 tương đương

mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
GIỮA, KHÔNG GIỮA

Để kiểm tra xem giá trị có nằm trong một phạm vi hay không, bạn có thể sử dụng toán tử

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
94. Một lần nữa, điều này dễ dàng và rõ ràng hơn biểu thức
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
93 tương đương

mysql> SELECT * FROM products 
       WHERE (price BETWEEN 1.0 AND 2.0) AND (quantity BETWEEN 1000 AND 2000);
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
LÀ NULL, KHÔNG PHẢI LÀ NULL

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
18 là một giá trị đặc biệt, đại diện cho "không có giá trị", "giá trị bị thiếu" hoặc "giá trị không xác định". Bạn có thể kiểm tra xem một cột có chứa
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
18 bởi
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
98 hoặc
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
99 hay không. Ví dụ,

mysql> SELECT * FROM products WHERE productCode IS NULL;
Empty set (0.00 sec)

Sử dụng toán tử so sánh (chẳng hạn như

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
00 hoặc
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
01) để kiểm tra
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
18 là một lỗi - một lỗi rất phổ biến. Ví dụ,

ĐẶT HÀNG THEO Mệnh đề

Bạn có thể sắp xếp thứ tự các hàng đã chọn bằng mệnh đề

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
03, với cú pháp sau

SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...

Hàng đã chọn sẽ được sắp xếp theo các giá trị trong

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
04, theo thứ tự tăng dần (
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
05) (mặc định) hoặc giảm dần (
mysql> SELECT * FROM products WHERE name IN ('Pen Red', 'Pen Black');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1001 | PEN         | Pen Red   |     5000 |  1.23 |
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
+-----------+-------------+-----------+----------+-------+
6). Nếu một số hàng có cùng giá trị trong
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
04, nó sẽ được sắp xếp theo
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
08, v.v. Đối với các chuỗi, thứ tự có thể phân biệt chữ hoa chữ thường hoặc không phân biệt chữ hoa chữ thường, tùy thuộc vào cái gọi là trình tự đối chiếu ký tự được sử dụng. Ví dụ như,

Bạn có thể chọn ngẫu nhiên các bản ghi được trả về thông qua chức năng

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
09, e. g. ,

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
0
Mệnh đề GIỚI HẠN

Truy vấn

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43 trên cơ sở dữ liệu lớn có thể tạo ra nhiều hàng. Bạn có thể sử dụng mệnh đề
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
11 để giới hạn số hàng được hiển thị, e. g. ,

Để tiếp tục đến các bản ghi sau, bạn có thể chỉ định số hàng sẽ được bỏ qua, theo sau là số hàng sẽ được hiển thị trong mệnh đề

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
11, như sau

AS - Bí danh

Bạn có thể sử dụng từ khóa

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
13 để xác định bí danh cho một mã định danh (chẳng hạn như tên cột, tên bảng). Bí danh sẽ được sử dụng để hiển thị tên. Nó cũng có thể được sử dụng như tài liệu tham khảo. Ví dụ,

Lưu ý rằng mã định danh "______21_______14" chứa khoảng trống và phải được đặt trong dấu ngoặc kép

Hàm CONCAT()

Bạn cũng có thể nối một vài cột thành một (e. g. , nối họ và tên) sử dụng hàm

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
15. Ví dụ,

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
1

Sản xuất báo cáo tóm tắt

Để tạo báo cáo tóm tắt, chúng ta thường cần tổng hợp các hàng có liên quan

RIÊNG BIỆT

Một cột có thể có các giá trị trùng lặp, chúng tôi có thể sử dụng từ khóa

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
16 để chỉ chọn các giá trị khác biệt. Chúng tôi cũng có thể áp dụng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
16 cho một số cột để chọn các kết hợp riêng biệt của các cột này. Ví dụ như,

NHÓM THEO Mệnh đề

Mệnh đề

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
18 cho phép bạn thu gọn nhiều bản ghi có giá trị chung thành các nhóm. Ví dụ,

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
18 tự nó không có ý nghĩa. Nó được sử dụng cùng với các hàm tổng hợp
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
18 (chẳng hạn như
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
21,
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
22,
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
23) để tạo tóm tắt nhóm

NHÓM THEO Hàm tổng hợp. ĐẾM, TỐI ĐA, TỐI THIỂU, AVG, SUM, STD, GROUP_CONCAT

Chúng ta có thể áp dụng

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
18 Hàm tổng hợp cho từng nhóm để tạo báo cáo tóm tắt nhóm

Hàm

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
25 trả về các hàng đã chọn; . Ví dụ,

Bên cạnh

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
21, còn có nhiều hàm tổng hợp
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
18 khác như
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
22,
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
31,
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
32 và
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
23. Ví dụ,

mệnh đề HAVING

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
34 tương tự như
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
35, nhưng nó có thể hoạt động trên các hàm tổng hợp
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
18;

VỚI ROLLUP

Mệnh đề

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
38 thể hiện tóm tắt tóm tắt của nhóm, e. g. ,

Sửa đổi dữ liệu - CẬP NHẬT

Để sửa đổi dữ liệu hiện có, hãy sử dụng lệnh

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
39, với cú pháp sau

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
2

Ví dụ,

THẬN TRỌNG. Nếu mệnh đề

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
35 bị bỏ qua trong lệnh
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
41, TẤT CẢ HÀNG sẽ được cập nhật. Do đó, nên thực hiện một truy vấn
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43, sử dụng cùng tiêu chí, để kiểm tra tập kết quả trước khi đưa ra câu hỏi
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
41. Điều này cũng áp dụng cho câu lệnh
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
8 trong phần sau

Xóa hàng - DELETE FROM

Sử dụng lệnh

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
45 để xóa (các) hàng khỏi bảng, với cú pháp sau

Ví dụ,

Lưu ý rằng

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
46" không có mệnh đề
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
35 sẽ xóa TẤT CẢ các bản ghi khỏi bảng. Ngay cả với mệnh đề
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
35, bạn có thể đã vô tình xóa một số bản ghi. Luôn luôn nên đưa ra lệnh
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43 với cùng mệnh đề
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
35 để kiểm tra tập kết quả trước khi đưa ra lệnh
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
8 (và
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
41)

Tải/Xuất dữ liệu từ/sang tệp văn bản

Có một số cách để thêm dữ liệu vào cơ sở dữ liệu. (a) đưa ra các lệnh

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
53 theo cách thủ công;

LOAD DATA INFILE ĐỊA PHƯƠNG. VÀO BẢNG

Bên cạnh việc sử dụng các lệnh

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
53 để chèn hàng, bạn có thể giữ dữ liệu thô của mình trong một tệp văn bản và tải chúng vào bảng thông qua lệnh
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
55. Ví dụ: sử dụng trình soạn thảo văn bản để TẠO TẬP TIN MỚI có tên "
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
59", trong "
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
60" (dành cho Windows) hoặc "
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
61" (dành cho Mac), chứa các bản ghi sau, trong đó các giá trị được phân tách bằng ____21_______62. Phần mở rộng tệp của "
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
63" là viết tắt của tệp văn bản Giá trị được phân tách bằng dấu phẩy

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
3

Bạn có thể tải dữ liệu thô vào bảng

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 như sau

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
4

ghi chú

  • Bạn cần cung cấp đường dẫn (tuyệt đối hoặc tương đối) và tên tệp. Sử dụng dấu gạch chéo xuôi kiểu Unix
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    65 làm dấu phân cách thư mục, thay vì dấu gạch chéo ngược kiểu Windows
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    66
  • Dấu phân cách dòng mặc định (hoặc cuối dòng) là
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    67 (kiểu Unix). Nếu tệp văn bản được chuẩn bị trong Windows, bạn cần bao gồm
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    68
  • Dấu phân cách cột mặc định là "tab" (trong tệp được gọi là tệp TSV - Giá trị được phân tách bằng tab). Nếu bạn sử dụng một dấu phân cách khác, e. g.
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    62, bao gồm
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    70
  • Bạn cần sử dụng
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    71 cho
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    18
chương trình tiện ích mysqlimport

Bạn cũng có thể sử dụng chương trình tiện ích

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
56 để tải dữ liệu từ tệp văn bản

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
5
LỰA CHỌN. INTO OUTFILE

Khen ngợi lệnh

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
55, bạn có thể sử dụng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
75 để xuất dữ liệu từ bảng thành tệp văn bản. Ví dụ,

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
6

Chạy tập lệnh SQL

Thay vì nhập từng câu lệnh SQL theo cách thủ công, bạn có thể giữ nhiều câu lệnh SQL trong một tệp văn bản, được gọi là tập lệnh SQL và chạy tập lệnh. Ví dụ: sử dụng trình soạn thảo văn bản lập trình để chuẩn bị tập lệnh sau và lưu dưới dạng "

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
76" trong "
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
60" (đối với Windows) hoặc "
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
61" (đối với Mac)

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
7

Bạn có thể chạy tập lệnh hoặc

  1. thông qua lệnh "
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    79" trong máy khách MySQL. Ví dụ: để khôi phục bản sao lưu
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
    +-----------+-------------+----------+----------+-------+
    | productID | productCode | name     | quantity | price |
    +-----------+-------------+----------+----------+-------+
    |      1001 | PEN         | Pen Red  |     5000 |  1.23 |
    |      1002 | PEN         | Pen Blue |     8000 |  1.25 |
    +-----------+-------------+----------+----------+-------+
     
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
    +-----------+-------------+---------+----------+-------+
    | productID | productCode | name    | quantity | price |
    +-----------+-------------+---------+----------+-------+
    |      1001 | PEN         | Pen Red |     5000 |  1.23 |
    +-----------+-------------+---------+----------+-------+
       
    mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
    +-----------+-------------+-----------+----------+-------+
    | productID | productCode | name      | quantity | price |
    +-----------+-------------+-----------+----------+-------+
    |      1003 | PEN         | Pen Black |     2000 |  1.25 |
    |      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
    |      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
    +-----------+-------------+-----------+----------+-------+
    1 trước đó
  2. thông qua "chế độ hàng loạt" của chương trình máy khách
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    7, bằng cách chuyển hướng đầu vào từ tập lệnh.
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    8

Nhiều hơn một bảng

Ví dụ của chúng tôi cho đến nay chỉ liên quan đến một bảng "_______5_______2". Một cơ sở dữ liệu thực tế chứa nhiều bảng liên quan

Sản phẩm có nhà cung cấp. Nếu mỗi sản phẩm có một nhà cung cấp và mỗi nhà cung cấp chỉ cung cấp một sản phẩm (được gọi là mối quan hệ một-một), chúng ta chỉ cần thêm dữ liệu của nhà cung cấp (tên, địa chỉ, số điện thoại) vào bảng

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2. Giả sử rằng mỗi sản phẩm có một nhà cung cấp và một nhà cung cấp có thể cung cấp 0 hoặc nhiều sản phẩm (được gọi là mối quan hệ một-nhiều). Đưa dữ liệu của nhà cung cấp vào bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 dẫn đến trùng lặp dữ liệu. Điều này là do một nhà cung cấp có thể cung cấp nhiều sản phẩm, do đó, dữ liệu của cùng một nhà cung cấp xuất hiện trong nhiều hàng. Điều này không chỉ gây lãng phí dung lượng lưu trữ mà còn dễ dẫn đến tình trạng không thống nhất (vì tất cả các dữ liệu trùng nhau phải được cập nhật đồng thời). Tình hình thậm chí còn phức tạp hơn nếu một sản phẩm có nhiều nhà cung cấp và mỗi nhà cung cấp có thể cung cấp nhiều sản phẩm, trong mối quan hệ nhiều-nhiều

Mối quan hệ một-nhiều

Giả sử rằng mỗi sản phẩm có một nhà cung cấp và mỗi nhà cung cấp cung cấp một hoặc nhiều sản phẩm. Chúng ta có thể tạo một bảng tên là

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85 để lưu trữ dữ liệu của nhà cung cấp (e. g. tên, địa chỉ và số điện thoại). Chúng tôi tạo một cột có giá trị duy nhất được gọi là
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 để xác định mọi nhà cung cấp. Ta đặt
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 làm khóa chính cho bảng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85 (để đảm bảo tính duy nhất và tạo điều kiện tìm kiếm nhanh)

Để liên kết bảng

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85 với bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2, chúng tôi thêm một cột mới vào bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 - bảng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86. Sau đó, chúng tôi đặt cột
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 của bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 làm khóa ngoại tham chiếu cột
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 của bảng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85 để đảm bảo cái gọi là tính toàn vẹn tham chiếu

cơ sở dữ liệu. Gió nam
Bàn. nhà cung cấp ID nhà cung cấp
tên INT
VARCHAR(3)điện thoại
CHAR(8)501Thương nhân ABC88881111502Công ty XYZ88882222503QQ Corp88883333
cơ sở dữ liệu. Gió nam
Bàn. ID sản phẩm
INTmã sản phẩm
tên CHAR(3)
VARCHAR(30)số lượng
INTprice
ID nhà cung cấp DECIMAL(10,2)
INT
(Khóa ngoại)2001PECBút chì 3B5000. 525012002PECBút chì 4B2000. 625012003PECBút chì 5B1000. 735012004PECBút chì 6B5000. 47502

Trước tiên, chúng ta cần tạo bảng

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85, vì bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 tham chiếu đến bảng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85. Bảng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85 được gọi là bảng cha;

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
9
THAY ĐỔI BẢNG

Thay vì xóa và tạo lại bảng

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2, chúng ta sẽ sử dụng "
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
03" để thêm một cột mới
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 vào bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
0

Tiếp theo, chúng ta sẽ thêm một ràng buộc khóa ngoại trên các cột

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 của bảng con
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 vào bảng cha
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85, để đảm bảo rằng mọi
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 trong bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 luôn đề cập đến một
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 hợp lệ trong bảng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85 - điều này được gọi là tính toàn vẹn tham chiếu

Trước khi chúng tôi có thể thêm khóa ngoại, chúng tôi cần đặt

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 của các bản ghi hiện có trong bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 thành một
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 hợp lệ trong bảng (giả sử
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
16)

CHỌN với THAM GIA

Lệnh

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43 có thể được sử dụng để truy vấn và nối dữ liệu từ hai bảng có liên quan. Ví dụ: để liệt kê
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
5 của sản phẩm (trong bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2) và
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
5 của nhà cung cấp (trong bảng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85), chúng ta có thể nối hai bảng thông qua hai cột chung
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86

Trong kết quả truy vấn ở trên, hai trong số các cột có cùng tiêu đề "

SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
5". Chúng ta có thể tạo bí danh cho các tiêu đề

Sơ đồ cơ sở dữ liệu như minh họa. Liên kết chỉ ra mối quan hệ một-nhiều giữa

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 và
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85

Kiểm tra xem kết quả truy vấn sql có trống không php

Mối quan hệ nhiều-nhiều

Giả sử rằng một sản phẩm có nhiều nhà cung cấp; . Giải pháp trên phá vỡ. Bạn không thể bao gồm

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 trong bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2, vì bạn không thể xác định số lượng nhà cung cấp và do đó, số lượng cột cần thiết cho các
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86. Tương tự, bạn không thể bao gồm
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
3 trong bảng
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85, vì bạn không thể xác định số lượng sản phẩm

Để giải quyết vấn đề này, bạn cần tạo một bảng mới, được gọi là bảng liên kết (hoặc bảng liên kết), để cung cấp liên kết. Hãy gọi bảng nối là

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
31, như minh họa

cơ sở dữ liệu. Gió nam
Bàn. product_suppliersproductID
INT
(Khóa ngoại)ID nhà cung cấp
INT
(Khóa ngoại)20015012002501200350120045022001503
cơ sở dữ liệu. Gió nam
Bàn. nhà cung cấp ID nhà cung cấp
tên INT
VARCHAR(30)điện thoại
CHAR(8)501Thương nhân ABC88881111502Công ty XYZ88882222503QQ Corp88883333
cơ sở dữ liệu. Gió nam
Bàn. ID sản phẩm
INTmã sản phẩm
tên CHAR(3)
VARCHAR(30)số lượng
INTprice
DECIMAL(10,2)2001PECBút chì 3B5000. 522002PECBút chì 4B2000. 622003PECBút chì 5B1000. 732004PECBút chì 6B5000. 47

Hãy tạo bảng

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
31. Khóa chính của bảng gồm 2 cột.
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
3 và
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86, vì sự kết hợp của chúng xác định duy nhất từng hàng. Khóa chính này được xác định để đảm bảo tính duy nhất. Hai khóa ngoại được xác định để đặt ràng buộc cho hai bảng cha

Tiếp theo, xóa cột

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 khỏi bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2. (Cột này đã được thêm vào để thiết lập mối quan hệ một-nhiều. Nó không còn cần thiết trong mối quan hệ nhiều-nhiều. )

Trước khi có thể xóa cột này, bạn cần xóa khóa ngoại được tạo trên cột này. Để xóa một khóa trong MySQL, bạn cần biết tên ràng buộc của nó do hệ thống tạo ra. Để tìm tên ràng buộc, hãy đưa ra "

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
37" và lưu ý tên ràng buộc của khóa ngoại trong mệnh đề "
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
38". Sau đó, bạn có thể xóa khóa ngoại bằng cách sử dụng "
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
39"

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
1

Bây giờ, chúng ta có thể loại bỏ cột

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
86 dư thừa cột

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
2
truy vấn

Tương tự, chúng ta có thể sử dụng

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43 với
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
42 để truy vấn dữ liệu từ 3 bảng, ví dụ:

Sơ đồ cơ sở dữ liệu như sau. Cả hai bảng

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 và
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85 đều thể hiện mối quan hệ một-nhiều với bảng nối. Mối quan hệ nhiều-nhiều được hỗ trợ thông qua bảng nối

Kiểm tra xem kết quả truy vấn sql có trống không php

Mối quan hệ một đối một

Giả sử rằng một số sản phẩm có dữ liệu tùy chọn (e. g. , ảnh, bình luận). Thay vì giữ những dữ liệu tùy chọn này trong bảng

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2, sẽ hiệu quả hơn nếu tạo một bảng khác có tên là
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
46s và liên kết nó với
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2 bằng mối quan hệ một đối một, như minh họa

Kiểm tra xem kết quả truy vấn sql có trống không php
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
3

Sao lưu và khôi phục

Sao lưu. Trước khi kết thúc ví dụ này, hãy chạy chương trình tiện ích

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
48 để kết xuất (sao lưu) toàn bộ cơ sở dữ liệu
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
1

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
4

Nghiên cứu tệp đầu ra, chứa các câu lệnh

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
9,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
33 và
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
53 để tạo lại các bảng đã đổ

Cú pháp cho chương trình tiện ích

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
48 như sau

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
5

Khôi phục. Tiện ích

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
48 tạo ra một tập lệnh SQL (bao gồm các lệnh
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
33 và
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
53 để tạo lại các bảng và tải dữ liệu của chúng). Bạn có thể khôi phục từ bản sao lưu bằng cách chạy tập lệnh

  1. thông qua lệnh "
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    79" trong ứng dụng khách tương tác. Ví dụ: để khôi phục bản sao lưu
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
    +-----------+-------------+----------+----------+-------+
    | productID | productCode | name     | quantity | price |
    +-----------+-------------+----------+----------+-------+
    |      1001 | PEN         | Pen Red  |     5000 |  1.23 |
    |      1002 | PEN         | Pen Blue |     8000 |  1.25 |
    +-----------+-------------+----------+----------+-------+
     
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
    +-----------+-------------+---------+----------+-------+
    | productID | productCode | name    | quantity | price |
    +-----------+-------------+---------+----------+-------+
    |      1001 | PEN         | Pen Red |     5000 |  1.23 |
    +-----------+-------------+---------+----------+-------+
       
    mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
    +-----------+-------------+-----------+----------+-------+
    | productID | productCode | name      | quantity | price |
    +-----------+-------------+-----------+----------+-------+
    |      1003 | PEN         | Pen Black |     2000 |  1.25 |
    |      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
    |      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
    +-----------+-------------+-----------+----------+-------+
    1 trước đó
  2. thông qua "chế độ hàng loạt" của chương trình máy khách
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    7 bằng cách chuyển hướng đầu vào từ tập lệnh

Tìm hiểu thêm về Khóa chính, Khóa ngoại và Chỉ mục

Khóa chính

Trong mô hình quan hệ, một bảng không được chứa các hàng trùng lặp, vì điều đó sẽ tạo ra sự không rõ ràng khi truy xuất. Để đảm bảo tính duy nhất, mỗi bảng phải có một cột (hoặc một tập hợp các cột), được gọi là khóa chính, xác định duy nhất mọi bản ghi của bảng. Ví dụ: một số duy nhất

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
60 có thể được sử dụng làm khóa chính cho bảng
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
61; . Khóa chính được gọi là khóa đơn nếu nó là một cột đơn; . Hầu hết các RDBMS xây dựng một chỉ mục trên khóa chính để hỗ trợ tìm kiếm nhanh. Khóa chính thường được dùng để liên kết với các bảng khác

Khóa ngoại

Khóa ngoại của bảng con dùng để tham chiếu đến bảng cha. Có thể áp đặt ràng buộc khóa ngoại để đảm bảo cái gọi là tính toàn vẹn tham chiếu - các giá trị trong bảng con phải là các giá trị hợp lệ trong bảng cha

Chúng tôi xác định khóa ngoại khi xác định bảng con, tham chiếu đến bảng cha, như sau

Bạn có thể chỉ định hành động tham chiếu cho

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
41 và
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
8 thông qua các mệnh đề tùy chọn
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
68 và
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
69

  1. INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    70 (mặc định). không cho phép
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
    +-----------+-------------+----------+----------+-------+
    | productID | productCode | name     | quantity | price |
    +-----------+-------------+----------+----------+-------+
    |      1001 | PEN         | Pen Red  |     5000 |  1.23 |
    |      1002 | PEN         | Pen Blue |     8000 |  1.25 |
    +-----------+-------------+----------+----------+-------+
     
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
    +-----------+-------------+---------+----------+-------+
    | productID | productCode | name    | quantity | price |
    +-----------+-------------+---------+----------+-------+
    |      1001 | PEN         | Pen Red |     5000 |  1.23 |
    +-----------+-------------+---------+----------+-------+
       
    mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
    +-----------+-------------+-----------+----------+-------+
    | productID | productCode | name      | quantity | price |
    +-----------+-------------+-----------+----------+-------+
    |      1003 | PEN         | Pen Black |     2000 |  1.25 |
    |      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
    |      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
    +-----------+-------------+-----------+----------+-------+
    8 hoặc
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    41 của hàng của cha mẹ, nếu có các hàng phù hợp trong bảng con
  2. INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    73. xếp tầng tác vụ
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
    +-----------+-------------+----------+----------+-------+
    | productID | productCode | name     | quantity | price |
    +-----------+-------------+----------+----------+-------+
    |      1001 | PEN         | Pen Red  |     5000 |  1.23 |
    |      1002 | PEN         | Pen Blue |     8000 |  1.25 |
    +-----------+-------------+----------+----------+-------+
     
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
    +-----------+-------------+---------+----------+-------+
    | productID | productCode | name    | quantity | price |
    +-----------+-------------+---------+----------+-------+
    |      1001 | PEN         | Pen Red |     5000 |  1.23 |
    +-----------+-------------+---------+----------+-------+
       
    mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
    +-----------+-------------+-----------+----------+-------+
    | productID | productCode | name      | quantity | price |
    +-----------+-------------+-----------+----------+-------+
    |      1003 | PEN         | Pen Black |     2000 |  1.25 |
    |      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
    |      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
    +-----------+-------------+-----------+----------+-------+
    8 hoặc
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    41 vào các hàng phù hợp trong bảng con
  3. INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    76. đặt giá trị khóa ngoại trong bảng con thành
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    18 (nếu cho phép
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    18)
  4. INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    79. một thuật ngữ SQL có nghĩa là không có hành động nào trên hàng của cha mẹ. Tương tự như
    INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    70 trong MySQL, không cho phép
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
    +-----------+-------------+----------+----------+-------+
    | productID | productCode | name     | quantity | price |
    +-----------+-------------+----------+----------+-------+
    |      1001 | PEN         | Pen Red  |     5000 |  1.23 |
    |      1002 | PEN         | Pen Blue |     8000 |  1.25 |
    +-----------+-------------+----------+----------+-------+
     
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
    +-----------+-------------+---------+----------+-------+
    | productID | productCode | name    | quantity | price |
    +-----------+-------------+---------+----------+-------+
    |      1001 | PEN         | Pen Red |     5000 |  1.23 |
    +-----------+-------------+---------+----------+-------+
       
    mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
    +-----------+-------------+-----------+----------+-------+
    | productID | productCode | name      | quantity | price |
    +-----------+-------------+-----------+----------+-------+
    |      1003 | PEN         | Pen Black |     2000 |  1.25 |
    |      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
    |      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
    +-----------+-------------+-----------+----------+-------+
    8 hoặc
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    41 (không làm gì cả)

Hãy thử xóa một bản ghi trong bảng

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
85 (cha) được tham chiếu bởi bảng
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
31 (con), e. g. ,

Bản ghi không thể bị xóa vì ràng buộc "_______98_______85" mặc định đã được áp đặt

Chỉ mục (hoặc Khóa)

Chỉ mục (hoặc Khóa) có thể được tạo trên (các) cột đã chọn để hỗ trợ tìm kiếm nhanh. Không có chỉ mục, "

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
86" cần khớp với cột
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
3 của tất cả các bản ghi trong bảng
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
2. Nếu cột
SELECT .. FROM tableName
WHERE criteria
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ...
3 được lập chỉ mục (e. g. , sử dụng cây nhị phân), việc so khớp có thể được cải thiện rất nhiều (thông qua tìm kiếm cây nhị phân)

Bạn nên lập chỉ mục các cột thường được sử dụng trong mệnh đề

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
35;

Hạn chế về lập chỉ mục là chi phí và không gian. Xây dựng và duy trì các chỉ mục yêu cầu tính toán và không gian bộ nhớ. Các chỉ mục hỗ trợ tìm kiếm nhanh nhưng làm giảm hiệu suất khi sửa đổi bảng (

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
92) và cần được chứng minh. Tuy nhiên, cơ sở dữ liệu quan hệ thường được tối ưu hóa cho các truy vấn và truy xuất, nhưng KHÔNG dành cho các bản cập nhật

Trong MySQL, từ khóa

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
93 đồng nghĩa với
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
94

Trong MySQL, các chỉ mục có thể được xây dựng trên

  1. một cột duy nhất (column-index)
  2. một tập hợp các cột (chỉ mục nối)
  3. trên cột giá trị duy nhất (
    INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    95 hoặc
    INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    96)
  4. trên tiền tố của một cột đối với chuỗi (_______12_______07 hoặc
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    08), e. g. , 5 ký tự đầu tiên

Có thể có nhiều hơn một chỉ mục trong một bảng. Chỉ mục được tạo tự động trên (các) cột khóa chính

Bạn có thể xây dựng chỉ mục thông qua

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
33,
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
00 hoặc
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
03

Thêm SQL

Truy vấn phụ

Kết quả của một truy vấn có thể được sử dụng trong một câu lệnh SQL khác. Truy vấn con rất hữu ích nếu có nhiều hơn một bảng tham gia

CHỌN với Truy vấn con

Trong ví dụ bán sản phẩm nhiều-nhiều trước đây, làm cách nào để tìm nhà cung cấp không cung cấp bất kỳ sản phẩm nào?

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
6

Bạn có thể làm điều này mà không cần truy vấn phụ không?

Truy vấn con có thể trả về một vô hướng, một cột, một hàng hoặc một bảng. Bạn có thể sử dụng toán tử so sánh (e. g. ,

mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
50,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
53) trên vô hướng,
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
91 hoặc
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
92 cho một hàng hoặc cột,
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
08 hoặc ________0____09 để kiểm tra tập rỗng

CHÈN. CẬP NHẬT. XÓA với truy vấn con

Bạn cũng có thể sử dụng truy vấn con với các câu lệnh SQL khác, chẳng hạn như

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
53,
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
8 hoặc
mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
41. Ví dụ,

Làm việc với Ngày và Giờ

Ngày và giờ được quan tâm đặc biệt đối với các ứng dụng cơ sở dữ liệu. Điều này là do hồ sơ kinh doanh thường mang thông tin ngày/giờ (e. g. ,

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
13,
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
14,
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
15,
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
16), cũng như nhu cầu đánh dấu thời gian tạo và cập nhật lần cuối hồ sơ để kiểm tra và bảo mật

Với kiểu dữ liệu ngày/giờ, bạn có thể sắp xếp kết quả theo ngày, tìm kiếm một ngày cụ thể hoặc một phạm vi ngày, tính toán sự khác biệt giữa các ngày, tính toán một ngày mới bằng cách cộng/trừ một khoảng từ một ngày nhất định

Ngày Bằng Ví dụ

Hãy bắt đầu với Ngày (không có Thời gian) với ví dụ sau. Hãy lưu ý rằng giá trị ngày tháng phải được viết dưới dạng một chuỗi ở định dạng

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
17, e. g. ,
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
18

Chức năng ngày/giờ

MySQL cung cấp các chức năng tích hợp này để lấy ngày, giờ và ngày giờ hiện tại

  • mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    19. trả về ngày và giờ hiện tại ở định dạng
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    20
  • mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    21 (hoặc
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    22, hoặc
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    23). trả về ngày hiện tại ở định dạng
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    24
  • mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    25 (hoặc
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    26, hoặc
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    27). trả về thời gian hiện tại ở định dạng
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    28

Ví dụ như,

mysql> CREATE DATABASE IF NOT EXISTS southwind;
   
mysql> SHOW CREATE DATABASE southwind \G
*************************** 1. row ***************************
       Database: southwind
Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
7
Các loại ngày/giờ SQL

MySQL cung cấp các kiểu dữ liệu ngày/giờ này

  • mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    29. lưu trữ cả ngày và giờ ở định dạng
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    20. Phạm vi hợp lệ là
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    31 đến
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    32. Bạn có thể đặt giá trị bằng định dạng hợp lệ (e. g. ,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    33). Bạn cũng có thể áp dụng các hàm
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    19 hoặc
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    21 (thời gian sẽ được đặt thành
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    36), nhưng không phải là
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    25
  • mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    38. chỉ lưu trữ ngày ở định dạng
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    24. Phạm vi là
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    40 đến
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    41. Bạn có thể áp dụng
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    21 hoặc
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    19 (thời gian bị loại bỏ) vào trường này
  • mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    44. chỉ lưu trữ thời gian ở định dạng
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    28. Bạn có thể đăng ký
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    25 hoặc
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    19 (ngày bị loại bỏ) cho trường này
  • mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    48. trong
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    49 hoặc
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    50. Phạm vi năm là 1901 đến 2155. Sử dụng loại
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    51 cho năm ngoài phạm vi này. Bạn có thể áp dụng
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    21 cho trường này (bỏ qua tháng và ngày)
  • mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    53. tương tự như
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    29 nhưng lưu trữ số giây kể từ ngày 1 tháng 1 năm 1970 UTC (kiểu Unix). Phạm vi là
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    55 đến
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    56
    Sự khác biệt giữa
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    29 và
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    58 là
    1. phạm vi,
    2. hỗ trợ cho múi giờ,
    3. Cột
      mysql> SELECT name, price FROM products WHERE price < 1.0;
      +-----------+-------+
      | name      | price |
      +-----------+-------+
      | Pencil 2B |  0.48 |
      | Pencil 2H |  0.49 |
      +-----------+-------+
      2 rows in set (0.00 sec)
         
      mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
      +-----------+----------+
      | name      | quantity |
      +-----------+----------+
      | Pen Black |     2000 |
      +-----------+----------+
      1 row in set (0.00 sec)
      58 có thể được khai báo với
      mysql> SELECT name, price FROM products WHERE price < 1.0;
      +-----------+-------+
      | name      | price |
      +-----------+-------+
      | Pencil 2B |  0.48 |
      | Pencil 2H |  0.49 |
      +-----------+-------+
      2 rows in set (0.00 sec)
         
      mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
      +-----------+----------+
      | name      | quantity |
      +-----------+----------+
      | Pen Black |     2000 |
      +-----------+----------+
      1 row in set (0.00 sec)
      60 để đặt giá trị mặc định thành ngày/giờ hiện tại. (Mặc định của tất cả các loại dữ liệu khác, bao gồm
      mysql> SELECT name, price FROM products WHERE price < 1.0;
      +-----------+-------+
      | name      | price |
      +-----------+-------+
      | Pencil 2B |  0.48 |
      | Pencil 2H |  0.49 |
      +-----------+-------+
      2 rows in set (0.00 sec)
         
      mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
      +-----------+----------+
      | name      | quantity |
      +-----------+----------+
      | Pen Black |     2000 |
      +-----------+----------+
      1 row in set (0.00 sec)
      29, phải là một hằng số và không phải là một giá trị trả về của hàm). Bạn cũng có thể khai báo cột
      mysql> SELECT name, price FROM products WHERE price < 1.0;
      +-----------+-------+
      | name      | price |
      +-----------+-------+
      | Pencil 2B |  0.48 |
      | Pencil 2H |  0.49 |
      +-----------+-------+
      2 rows in set (0.00 sec)
         
      mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
      +-----------+----------+
      | name      | quantity |
      +-----------+----------+
      | Pen Black |     2000 |
      +-----------+----------+
      1 row in set (0.00 sec)
      58 với "
      mysql> SELECT name, price FROM products WHERE price < 1.0;
      +-----------+-------+
      | name      | price |
      +-----------+-------+
      | Pencil 2B |  0.48 |
      | Pencil 2H |  0.49 |
      +-----------+-------+
      2 rows in set (0.00 sec)
         
      mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
      +-----------+----------+
      | name      | quantity |
      +-----------+----------+
      | Pen Black |     2000 |
      +-----------+----------+
      1 row in set (0.00 sec)
      63" để nắm bắt dấu thời gian của lần cập nhật cuối cùng

Giá trị ngày/giờ có thể được nhập thủ công dưới dạng chuỗi ký tự (e. g. ,

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
64 cho
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
65). MySQL sẽ đưa ra cảnh báo và chèn tất cả các số không (e. g. ,
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
66 cho
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
65), nếu giá trị của ngày/giờ được chèn không hợp lệ hoặc nằm ngoài phạm vi.
mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
68 được gọi là ngày "giả"

Thêm Chức năng Ngày/Giờ

Thẩm quyền giải quyết. "Hàm ngày và giờ" của MySQL @ http. // nhà phát triển. mysql. com/doc/refman/5. 5/en/hàm ngày giờ. html

Có nhiều chức năng ngày/giờ

  • Trích xuất một phần của ngày/giờ.
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    69,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    70,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    71,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    72,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    73,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    74, e. g. ,
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    8
  • Trích xuất thông tin.
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    75 (e. g. ,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    76),
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    77 (e. g. ,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    78),
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    79 (1=Chủ Nhật, …, 7=Thứ Bảy),
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    80 (1-366),.
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
       
    mysql> SHOW CREATE DATABASE southwind \G
    *************************** 1. row ***************************
           Database: southwind
    Create Database: CREATE DATABASE `southwind` /*!40100 DEFAULT CHARACTER SET latin1 */
    9
  • Tính ngày/giờ khác.
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    81,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    82,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    83, e. g. ,____98_______0
  • khoảng thời gian tính toán.
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    84,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    85,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    86, e. g. ,____98_______1
  • đại diện.
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    87 (ngày kể từ năm 0),
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    88, e. g. ,
    INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    2
  • định dạng.
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    89, e. g. ,
  1. Tạo một bảng với các cột ngày/giờ khác nhau. Chỉ cột
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    58 mới có thể có
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    60 và
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    63.
    INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    3Ghi chú
    • Đừng dùng
      mysql> SELECT name, price FROM products WHERE price < 1.0;
      +-----------+-------+
      | name      | price |
      +-----------+-------+
      | Pencil 2B |  0.48 |
      | Pencil 2H |  0.49 |
      +-----------+-------+
      2 rows in set (0.00 sec)
         
      mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
      +-----------+----------+
      | name      | quantity |
      +-----------+----------+
      | Pen Black |     2000 |
      +-----------+----------+
      1 row in set (0.00 sec)
      93 nữa
    • Từ MySQL5. 7, phạm vi được hỗ trợ cho ngày giờ là
      mysql> SELECT name, price FROM products WHERE price < 1.0;
      +-----------+-------+
      | name      | price |
      +-----------+-------+
      | Pencil 2B |  0.48 |
      | Pencil 2H |  0.49 |
      +-----------+-------+
      2 rows in set (0.00 sec)
         
      mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
      +-----------+----------+
      | name      | quantity |
      +-----------+----------+
      | Pen Black |     2000 |
      +-----------+----------+
      1 row in set (0.00 sec)
      31 đến
      mysql> SELECT name, price FROM products WHERE price < 1.0;
      +-----------+-------+
      | name      | price |
      +-----------+-------+
      | Pencil 2B |  0.48 |
      | Pencil 2H |  0.49 |
      +-----------+-------+
      2 rows in set (0.00 sec)
         
      mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
      +-----------+----------+
      | name      | quantity |
      +-----------+----------+
      | Pen Black |     2000 |
      +-----------+----------+
      1 row in set (0.00 sec)
      32
  2. Chèn các giá trị theo cách thủ công bằng cách sử dụng chuỗi ký tự.
    INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    4
  3. Kiểm tra cập nhật cho
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    96.
    INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    5
  4. Chèn các giá trị bằng cách sử dụng các hàm có sẵn của MySQL
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    97,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    98,
    mysql> SELECT name, price FROM products WHERE price < 1.0;
    +-----------+-------+
    | name      | price |
    +-----------+-------+
    | Pencil 2B |  0.48 |
    | Pencil 2H |  0.49 |
    +-----------+-------+
    2 rows in set (0.00 sec)
       
    mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
    +-----------+----------+
    | name      | quantity |
    +-----------+----------+
    | Pen Black |     2000 |
    +-----------+----------+
    1 row in set (0.00 sec)
    99.
    INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    6
  5. Chèn các giá trị không hợp lệ hoặc nằm ngoài phạm vi. MySQL thay thế bằng tất cả các số không.
    INSERT INTO tableName VALUES 
       (row1FirstColumnValue, ..., row1lastColumnValue),
       (row2FirstColumnValue, ..., row2lastColumnValue), 
       ...
    7Ghi chú. Có thể không hoạt động trong MySQL 5. 7?
  6. Có thể sử dụng hàm tích hợp hữu ích
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
    +-----------+-------------+----------+----------+-------+
    | productID | productCode | name     | quantity | price |
    +-----------+-------------+----------+----------+-------+
    |      1001 | PEN         | Pen Red  |     5000 |  1.23 |
    |      1002 | PEN         | Pen Blue |     8000 |  1.25 |
    +-----------+-------------+----------+----------+-------+
     
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
    +-----------+-------------+---------+----------+-------+
    | productID | productCode | name    | quantity | price |
    +-----------+-------------+---------+----------+-------+
    |      1001 | PEN         | Pen Red |     5000 |  1.23 |
    +-----------+-------------+---------+----------+-------+
       
    mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
    +-----------+-------------+-----------+----------+-------+
    | productID | productCode | name      | quantity | price |
    +-----------+-------------+-----------+----------+-------+
    |      1003 | PEN         | Pen Black |     2000 |  1.25 |
    |      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
    |      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
    +-----------+-------------+-----------+----------+-------+
    00 để tính ngày trong tương lai, e. g. ,____98_______8

Khung nhìn

Chế độ xem là một bảng ảo không chứa dữ liệu vật lý. Nó cung cấp một cách khác để xem dữ liệu

INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
9

giao dịch

Một giao dịch nguyên tử là một tập hợp các câu lệnh SQL mà TẤT CẢ đều thành công hoặc TẤT CẢ đều thất bại. Giao dịch là quan trọng để đảm bảo rằng không có cập nhật một phần cho cơ sở dữ liệu, được cung cấp một nguyên tử của các câu lệnh SQL. Giao dịch được thực hiện thông qua

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
01 và
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
02

Nếu bạn bắt đầu một ứng dụng khách

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
7 khác và thực hiện một
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
43 trong quá trình giao dịch (trước khi cam kết hoặc khôi phục), bạn sẽ không thấy các thay đổi

Ngoài ra, bạn cũng có thể tắt cái gọi là chế độ

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
05, được đặt theo mặc định và cam kết mọi câu lệnh SQL đơn lẻ

Một giao dịch nhóm một tập hợp các hoạt động thành một đơn vị đáp ứng kiểm tra ACID

  1. nguyên tử. Nếu tất cả các hoạt động thành công, các thay đổi được cam kết với cơ sở dữ liệu. Nếu bất kỳ hoạt động nào không thành công, toàn bộ giao dịch sẽ được khôi phục và không có thay đổi nào được thực hiện đối với cơ sở dữ liệu. Nói cách khác, không có cập nhật một phần
  2. Tính nhất quán. Một giao dịch biến đổi cơ sở dữ liệu từ trạng thái nhất quán này sang trạng thái nhất quán khác
  3. Sự cô lập. Các thay đổi đối với giao dịch không hiển thị đối với giao dịch khác cho đến khi chúng được cam kết
  4. Độ bền. Các thay đổi đã cam kết sẽ bền và không bao giờ bị mất

Biến người dùng

Trong MySQL, bạn có thể xác định các biến người dùng thông qua

  1. mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
    +-----------+-------------+----------+----------+-------+
    | productID | productCode | name     | quantity | price |
    +-----------+-------------+----------+----------+-------+
    |      1001 | PEN         | Pen Red  |     5000 |  1.23 |
    |      1002 | PEN         | Pen Blue |     8000 |  1.25 |
    +-----------+-------------+----------+----------+-------+
     
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
    +-----------+-------------+---------+----------+-------+
    | productID | productCode | name    | quantity | price |
    +-----------+-------------+---------+----------+-------+
    |      1001 | PEN         | Pen Red |     5000 |  1.23 |
    +-----------+-------------+---------+----------+-------+
       
    mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
    +-----------+-------------+-----------+----------+-------+
    | productID | productCode | name      | quantity | price |
    +-----------+-------------+-----------+----------+-------+
    |      1003 | PEN         | Pen Black |     2000 |  1.25 |
    |      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
    |      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
    +-----------+-------------+-----------+----------+-------+
    06 trong lệnh
    mysql> CREATE DATABASE southwind;
    Query OK, 1 row affected (0.03 sec)
       
    mysql> DROP DATABASE southwind;
    Query OK, 0 rows affected (0.11 sec)
       
    mysql> CREATE DATABASE IF NOT EXISTS southwind;
    Query OK, 1 row affected (0.01 sec)
       
    mysql> DROP DATABASE IF EXISTS southwind;
    Query OK, 0 rows affected (0.00 sec)
    43, hoặc
  2. Lệnh
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
    +-----------+-------------+----------+----------+-------+
    | productID | productCode | name     | quantity | price |
    +-----------+-------------+----------+----------+-------+
    |      1001 | PEN         | Pen Red  |     5000 |  1.23 |
    |      1002 | PEN         | Pen Blue |     8000 |  1.25 |
    +-----------+-------------+----------+----------+-------+
     
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
    +-----------+-------------+---------+----------+-------+
    | productID | productCode | name    | quantity | price |
    +-----------+-------------+---------+----------+-------+
    |      1001 | PEN         | Pen Red |     5000 |  1.23 |
    +-----------+-------------+---------+----------+-------+
       
    mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
    +-----------+-------------+-----------+----------+-------+
    | productID | productCode | name      | quantity | price |
    +-----------+-------------+-----------+----------+-------+
    |      1003 | PEN         | Pen Black |     2000 |  1.25 |
    |      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
    |      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
    +-----------+-------------+-----------+----------+-------+
    08 hoặc
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
    +-----------+-------------+----------+----------+-------+
    | productID | productCode | name     | quantity | price |
    +-----------+-------------+----------+----------+-------+
    |      1001 | PEN         | Pen Red  |     5000 |  1.23 |
    |      1002 | PEN         | Pen Blue |     8000 |  1.25 |
    +-----------+-------------+----------+----------+-------+
     
    mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
    +-----------+-------------+---------+----------+-------+
    | productID | productCode | name    | quantity | price |
    +-----------+-------------+---------+----------+-------+
    |      1001 | PEN         | Pen Red |     5000 |  1.23 |
    +-----------+-------------+---------+----------+-------+
       
    mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
    +-----------+-------------+-----------+----------+-------+
    | productID | productCode | name      | quantity | price |
    +-----------+-------------+-----------+----------+-------+
    |      1003 | PEN         | Pen Black |     2000 |  1.25 |
    |      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
    |      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
    +-----------+-------------+-----------+----------+-------+
    09

Ví dụ như,

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
0

Thông tin thêm về THAM GIA

THAM GIA BÊN TRONG

Trong liên kết bên trong của hai bảng, mỗi hàng của bảng đầu tiên được kết hợp (nối) với mọi hàng của bảng thứ hai. Giả sử rằng có n1 hàng trong bảng đầu tiên và n2 hàng trong bảng thứ hai,

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
10 tạo ra tất cả các kết hợp của n1×n2 hàng - nó được gọi là Tích Descartes hoặc Tích chéo

Bạn có thể áp đặt ràng buộc bằng cách sử dụng mệnh đề

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
11, ví dụ:

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
1

Hãy lưu ý rằng những điều sau đây là tương đương

THAM GIA NGOÀI - THAM GIA TRÁI và THAM GIA PHẢI

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
10 với ràng buộc (
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
11 hoặc
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
14) tạo ra các hàng được tìm thấy trong cả hai bảng. Mặt khác,
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
15 có thể tạo ra các hàng nằm trong một bảng, nhưng không phải trong một bảng khác. Có hai loại
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
15s.
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
17 tạo ra các hàng nằm trong bảng bên trái, nhưng có thể không nằm trong bảng bên phải;

Trong một

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
17, khi một hàng ở bảng bên trái không khớp với bảng bên phải, nó vẫn được chọn nhưng bằng cách kết hợp với bản ghi "giả" của tất cả các hàng
mysql> CREATE DATABASE southwind;
Query OK, 1 row affected (0.03 sec)
   
mysql> DROP DATABASE southwind;
Query OK, 0 rows affected (0.11 sec)
   
mysql> CREATE DATABASE IF NOT EXISTS southwind;
Query OK, 1 row affected (0.01 sec)
   
mysql> DROP DATABASE IF EXISTS southwind;
Query OK, 0 rows affected (0.00 sec)
18 cho bảng bên phải

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
2

Kết quả là,

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
17 đảm bảo rằng tập kết quả chứa mọi hàng trên bảng bên trái. Điều này rất quan trọng, vì trong một số truy vấn, bạn muốn có kết quả trên mọi hàng ở bảng bên trái, không có kết quả khớp ở bảng bên phải, e. g. , tìm kiếm các mặt hàng không có nhà cung cấp. Ví dụ,

mysql> SELECT name, price FROM products WHERE price < 1.0;
+-----------+-------+
| name      | price |
+-----------+-------+
| Pencil 2B |  0.48 |
| Pencil 2H |  0.49 |
+-----------+-------+
2 rows in set (0.00 sec)
   
mysql> SELECT name, quantity FROM products WHERE quantity <= 2000;
+-----------+----------+
| name      | quantity |
+-----------+----------+
| Pen Black |     2000 |
+-----------+----------+
1 row in set (0.00 sec)
3

Hãy lưu ý rằng những điều sau đây là tương đương

bài tập

Hệ thống cho thuê

Peter điều hành một công ty cho thuê ô tô nhỏ với 10 ô tô con và 5 xe tải. Anh ấy mời bạn thiết kế một cổng web để đưa hoạt động của anh ấy lên mạng

Đối với giai đoạn đầu, cổng thông tin điện tử sẽ cung cấp các chức năng cơ bản này

  1. Duy trì hồ sơ của các phương tiện và khách hàng
  2. Hỏi về tình trạng sẵn có của phương tiện, và
  3. Đặt xe cho thuê

Hồ sơ khách hàng chứa tên, địa chỉ và số điện thoại của anh ấy/cô ấy

Một chiếc xe, được xác định bởi số đăng ký xe, có thể được thuê hàng ngày. Giá cho thuê là khác nhau cho các loại xe khác nhau. Giảm 20% khi thuê từ 7 ngày trở lên

Khách hàng có thể thuê xe từ ngày bắt đầu đến ngày kết thúc. Giảm giá khách hàng đặc biệt, từ 0-50%, có thể được trao cho khách hàng ưu tiên

cơ sở dữ liệu

Cơ sở dữ liệu ban đầu chứa 3 bảng.

mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
22,
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
61 và
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
24.
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
24 là một bảng nối hỗ trợ mối quan hệ nhiều-nhiều giữa
mysql> SELECT * FROM products WHERE quantity >= 5000 AND name LIKE 'Pen %';
+-----------+-------------+----------+----------+-------+
| productID | productCode | name     | quantity | price |
+-----------+-------------+----------+----------+-------+
|      1001 | PEN         | Pen Red  |     5000 |  1.23 |
|      1002 | PEN         | Pen Blue |     8000 |  1.25 |
+-----------+-------------+----------+----------+-------+
 
mysql> SELECT * FROM products WHERE quantity >= 5000 AND price < 1.24 AND name LIKE 'Pen %';
+-----------+-------------+---------+----------+-------+
| productID | productCode | name    | quantity | price |
+-----------+-------------+---------+----------+-------+
|      1001 | PEN         | Pen Red |     5000 |  1.23 |
+-----------+-------------+---------+----------+-------+
   
mysql> SELECT * FROM products WHERE NOT (quantity >= 5000 AND name LIKE 'Pen %');
+-----------+-------------+-----------+----------+-------+
| productID | productCode | name      | quantity | price |
+-----------+-------------+-----------+----------+-------+
|      1003 | PEN         | Pen Black |     2000 |  1.25 |
|      1004 | PEC         | Pencil 2B |    10000 |  0.48 |
|      1005 | PEC         | Pencil 2H |     8000 |  0.49 |
+-----------+-------------+-----------+----------+-------+
22 và
INSERT INTO tableName VALUES 
   (row1FirstColumnValue, ..., row1lastColumnValue),
   (row2FirstColumnValue, ..., row2lastColumnValue), 
   ...
61

Làm cách nào để kiểm tra xem kết quả SQL có trống trong php không?

Hàm PHP empty() . Hàm này trả về false nếu biến tồn tại và không rỗng, ngược lại trả về true. Các giá trị sau ước tính trống. 0.

Làm cách nào để kiểm tra xem truy vấn mysql có trả về gì trong php không?

Đối với các truy vấn thành công khác, mysqli_query() sẽ trả về TRUE. Kết quả vẫn có thể trống ngay cả khi nó thành công. Nếu bạn sử dụng pdo, như đề xuất ở trên. Bạn lấy lại một mảng (mảng trống nếu kết quả trống) để bạn có thể thực hiện sizeof($array) hoặc count($array) để kiểm tra xem bạn có 0 kết quả hay không

Làm cách nào để xem lỗi SQL trong php?

Bạn chỉ có thể sử dụng. $this->db_link->error để nhận thông báo lỗi cuối cùng. Đối với tất cả các lỗi, hãy sử dụng $this->db_link->error_list.