Làm cách nào để kiểm tra giá trị trong MySQL?

Trước tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable807(
   ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   ClientName varchar(100),
   ClientCountryName varchar(100)
);
Query OK, 0 rows affected (0.64 sec)  

Chèn một số bản ghi vào bảng bằng lệnh chèn -

mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)

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

mysql> select *from DemoTable807;

Điều này sẽ tạo ra đầu ra sau -

+----------+------------+-------------------+
| ClientId | ClientName | ClientCountryName |
+----------+------------+-------------------+
|        1 | Chris      | UK                |
|        2 | David      | AUS               |
|        3 | Robert     | US                |
|        4 | Mike       | ENG               |
+----------+------------+-------------------+
4 rows in set (0.00 sec)

Sau đây là truy vấn để kiểm tra xem một giá trị có tồn tại trong một cột trong bảng MySQL hay không -

mysql> select *from DemoTable807 where ClientCountryName='US';

Điều này sẽ tạo ra đầu ra sau -

+----------+------------+-------------------+
| ClientId | ClientName | ClientCountryName |
+----------+------------+-------------------+
|        3 | Robert     | US                |
+----------+------------+-------------------+
1 row in set (0.00 sec)

Làm cách nào để kiểm tra giá trị trong MySQL?


Làm cách nào để kiểm tra giá trị trong MySQL?

Hướng dẫn MySQL này khám phá tất cả các toán tử so sánh được sử dụng để kiểm tra sự bằng nhau và bất bình đẳng, cũng như các toán tử nâng cao hơn

Sự miêu tả

Toán tử so sánh được sử dụng trong mệnh đề WHERE để xác định bản ghi nào cần chọn. Đây là danh sách các toán tử so sánh mà bạn có thể sử dụng trong MySQL

Comparison OperatorDescription=Equal<=>Equal (Safe to compare NULL values)<>Not Equal!=Not Equal>Greater Than>=Greater Than or EqualHãy xem lại các toán tử so sánh mà bạn có thể sử dụng trong MySQL

Ví dụ - Toán tử đẳng thức

Trong MySQL, bạn có thể sử dụng toán tử

mysql> select *from DemoTable807;
7 để kiểm tra sự bằng nhau trong một truy vấn. Toán tử
mysql> select *from DemoTable807;
7 chỉ có thể kiểm tra đẳng thức với các giá trị không phải là NULL

Ví dụ

SELECT *
FROM contacts
WHERE last_name = 'Johnson';

Trong ví dụ này, câu lệnh SELECT ở trên sẽ trả về tất cả các hàng từ bảng danh bạ nơi last_name bằng Johnson

Ví dụ - Toán tử đẳng thức (An toàn với giá trị NULL)

Bởi vì toán tử

mysql> select *from DemoTable807;
7 chỉ so sánh các giá trị không phải NULL, nên sẽ không an toàn khi sử dụng với các giá trị NULL. Để khắc phục hạn chế này, MySQL đã thêm toán tử
SELECT *
FROM contacts
WHERE website1 = website2;
2 để cho phép bạn kiểm tra sự bằng nhau với cả giá trị NULL và non-NULL

Để giải thích rõ hơn về sự khác biệt giữa toán tử

mysql> select *from DemoTable807;
7 và toán tử
SELECT *
FROM contacts
WHERE website1 = website2;
2, chúng tôi sẽ đưa vào một số ví dụ với cả truy vấn và dữ liệu

Giả sử rằng chúng ta có một bảng có tên là danh bạ trong MySQL được điền dữ liệu sau

contact_idlast_namewebsite1website21Johnsontechonthenet.com2Anderson3SmithTBDTDB4Jacksoncheckyourmath.comdigminecraft.com

Chúng ta có thể sử dụng toán tử

mysql> select *from DemoTable807;
7 trong truy vấn sau

SELECT *
FROM contacts
WHERE website1 = website2;

Vì chúng tôi đã sử dụng toán tử

mysql> select *from DemoTable807;
7, chúng tôi sẽ nhận được kết quả sau

contact_idlast_namewebsite1website23SmithTBDTDB

Trong ví dụ này, câu lệnh CHỌN ở trên sẽ trả về tất cả các hàng từ bảng danh bạ trong đó trang web1 bằng trang web2. Nó không trả về bản ghi thứ hai trong đó website1 và website2 đều là giá trị NULL

Bây giờ, hãy xem điều gì sẽ xảy ra khi chúng ta viết lại truy vấn của mình bằng cách sử dụng toán tử

SELECT *
FROM contacts
WHERE website1 = website2;
2 an toàn để sử dụng với các giá trị NULL

mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)
1

Vì chúng tôi đã sử dụng toán tử

SELECT *
FROM contacts
WHERE website1 = website2;
2, chúng tôi sẽ nhận được kết quả sau

contact_idlast_namewebsite1website22Anderson3SmithTBDTDB

Bây giờ, truy vấn của chúng tôi trả về tất cả các hàng từ bảng danh bạ trong đó trang web1 bằng trang web2, bao gồm cả những bản ghi trong đó trang web1 và trang web2 là giá trị NULL

Ví dụ - Toán tử bất đẳng thức

Trong MySQL, bạn có thể sử dụng toán tử

SELECT *
FROM contacts
WHERE website1 = website2;
9 hoặc
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)
10 để kiểm tra sự bất bình đẳng trong một truy vấn

Ví dụ: chúng ta có thể kiểm tra sự bất bình đẳng bằng cách sử dụng toán tử

SELECT *
FROM contacts
WHERE website1 = website2;
9, như sau

mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)
6

Trong ví dụ này, câu lệnh SELECT sẽ trả về tất cả các hàng từ bảng danh bạ nơi last_name không bằng Johnson

Hoặc bạn cũng có thể viết truy vấn này bằng cách sử dụng toán tử

mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)
10, như sau

mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)
8

Cả hai truy vấn này sẽ trả về cùng một kết quả

Ví dụ - Lớn hơn Toán tử

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

mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)
13 trong MySQL để kiểm tra biểu thức lớn hơn

mysql> select *from DemoTable807;
0

Trong ví dụ này, câu lệnh SELECT sẽ trả về tất cả các hàng từ bảng danh bạ có contact_id lớn hơn 50. Một contact_id bằng 50 sẽ không được bao gồm trong tập hợp kết quả

Ví dụ - Toán tử Lớn hơn hoặc Bằng

Trong MySQL, bạn có thể sử dụng toán tử

mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)
14 để kiểm tra biểu thức lớn hơn hoặc bằng

mysql> select *from DemoTable807;
2

Trong ví dụ này, câu lệnh SELECT sẽ trả về tất cả các hàng từ bảng danh bạ có contact_id lớn hơn hoặc bằng 50. Trong trường hợp này, contact_id bằng 50 sẽ được đưa vào tập hợp kết quả

Ví dụ - Toán tử nhỏ hơn

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

mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)
15 trong MySQL để kiểm tra biểu thức nhỏ hơn

mysql> select *from DemoTable807;
4

Trong ví dụ này, câu lệnh SELECT sẽ trả về tất cả các hàng từ bảng kiểm kê có product_id nhỏ hơn 300. Product_id bằng 300 sẽ không được đưa vào tập kết quả

Ví dụ - Toán tử nhỏ hơn hoặc bằng

Trong MySQL, bạn có thể sử dụng toán tử

mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Chris','UK');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('David','AUS');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Robert','US');
Query OK, 1 row affected (0.74 sec)
mysql> insert into DemoTable807(ClientName,ClientCountryName) values('Mike','ENG');
Query OK, 1 row affected (0.14 sec)
16 để kiểm tra biểu thức nhỏ hơn hoặc bằng

mysql> select *from DemoTable807;
6

Trong ví dụ này, câu lệnh SELECT sẽ trả về tất cả các hàng từ bảng kiểm kê có product_id nhỏ hơn hoặc bằng 300. Trong trường hợp này, product_id bằng 300 sẽ được đưa vào tập kết quả

Ví dụ - Toán tử nâng cao

Chúng tôi đã viết các hướng dẫn cụ thể để thảo luận về từng toán tử so sánh nâng cao hơn. Những chủ đề này sẽ được đề cập sau hoặc bạn có thể chuyển sang một trong những hướng dẫn này ngay bây giờ

Làm thế nào để viết kiểm tra trong MySQL?

Ràng buộc CHECK được sử dụng để giới hạn phạm vi giá trị có thể được đặt trong một cột . Nếu bạn xác định ràng buộc KIỂM TRA trên một cột, nó sẽ chỉ cho phép một số giá trị nhất định cho cột này. Nếu bạn xác định một ràng buộc KIỂM TRA trên một bảng, nó có thể giới hạn các giá trị trong các cột nhất định dựa trên các giá trị trong các cột khác trong hàng.

Làm cách nào để sử dụng chức năng kiểm tra trong MySQL?

Giới thiệu. Ràng buộc CHECK là một loại ràng buộc toàn vẹn trong SQL. Ràng buộc CHECK chỉ định điều kiện tìm kiếm để kiểm tra giá trị được nhập vào một hàng . Ràng buộc bị vi phạm nếu kết quả của điều kiện tìm kiếm là SAI đối với bất kỳ hàng nào của bảng (nhưng không phải nếu kết quả là KHÔNG BIẾT hoặc ĐÚNG).

Chúng ta có thể sử dụng == trong MySQL không?

Toán tử bằng nhau trong MySQL thực hiện phép so sánh bằng . Câu lệnh MySQL sau đây kiểm tra xem 1 có bằng 1 không, nếu 1 bằng 2, nếu NULL bằng NULL, nếu NULL bằng 3 và nếu 3 bằng NULL.

Làm cách nào để tìm kiếm giá trị trong bảng SQL?

Làm cách nào để tìm kiếm một giá trị trong toàn bộ cơ sở dữ liệu SQL? .
Trong trường Tìm kiếm văn bản, nhập văn bản cần tìm kiếm (e. g. tên biến)
Từ menu thả xuống Cơ sở dữ liệu, chọn cơ sở dữ liệu để tìm kiếm trong
Trong danh sách thả xuống Đối tượng, hãy chọn các loại đối tượng để tìm kiếm hoặc bỏ chọn tất cả chúng