仅从特定 MySQL 行获取单个值?

mysqlmysqli database

为此,请使用带有 where 子句的 SELECT INTO 变量。让我们首先创建一个表 −

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)

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

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)

使用 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;
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)

现在你可以显示上述变量的值 −

mysql> select @Name;

这将产生以下输出 −

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

相关文章