仅从特定 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)