从特定的MySQL行仅获取一个值?

为此,将SELECT INTO变量与where子句一起使用。让我们首先创建一个表-

mysql> create table DemoTable1896
   (
   StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   StudentName varchar(20),
   StudentMarks int
   );

使用插入命令在表中插入一些记录-

mysql> insert into DemoTable1896(StudentName,StudentMarks) values('Chris',56);
mysql> insert into DemoTable1896(StudentName,StudentMarks) values('David',98);
mysql> insert into DemoTable1896(StudentName,StudentMarks) values('Mike',89);
mysql> insert into DemoTable1896(StudentName,StudentMarks) values('Sam',78);

使用select语句显示表中的所有记录-

mysql> select * from DemoTable1896;

这将产生以下输出-

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

这是从特定的MySQL行获取值的查询-

mysql> set @Name:=NULL;
mysql> select StudentName into @Name from DemoTable1896 where StudentMarks=98;

现在您可以显示上述变量的值-

mysql> select @Name;

这将产生以下输出-

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