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

Chỉ nhận một giá trị duy nhất từ ​​một hàng MySQL cụ thể?

Đối với điều này, hãy sử dụng biến SELECT INTO với mệnh đề where. Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable1896
   (
   StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   StudentName varchar(20),
   StudentMarks int
   );
Query OK, 0 rows affected (0.00 sec)

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

mysql> insert into DemoTable1896(StudentName,StudentMarks) values('Chris',56);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1896(StudentName,StudentMarks) values('David',98);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1896(StudentName,StudentMarks) values('Mike',89);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1896(StudentName,StudentMarks) values('Sam',78);
Query OK, 1 row affected (0.00 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 DemoTable1896;

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

+-----------+-------------+--------------+
| StudentId | StudentName | StudentMarks |
+-----------+-------------+--------------+
|         1 | Chris       |           56 |
|         2 | David       |           98 |
|         3 | Mike        |           89 |
|         4 | Sam         |           78 |
+-----------+-------------+--------------+
4 rows in set (0.00 sec)

Đây là truy vấn để lấy giá trị từ một hàng MySQL cụ thể -

mysql> set @Name:=NULL;
Query OK, 0 rows affected (0.00 sec)
mysql> select StudentName into @Name from DemoTable1896 where StudentMarks=98;
Query OK, 1 row affected (0.00 sec)

Bây giờ bạn có thể hiển thị giá trị của biến trên -

mysql> select @Name;

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

+-------+
| @Name |
+-------+
| David |
+-------+
1 row in set (0.00 sec)