解决ERROR 1093 (HY000): 在删除MySQL列中的最低值时,无法在FROM子句中指定目标表的更新
首先创建一个表-
mysql> create table DemoTable1597
-> (
-> Marks int
-> );
Query OK, 0 rows affected (0.69 sec)
使用插入命令向表中插入一些记录-
mysql> insert into DemoTable1597 values(45);
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable1597 values(59);
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable1597 values(43);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable1597 values(85);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable1597 values(89);
Query OK, 1 row affected (0.12 sec)
使用select语句显示表中的所有记录-
mysql> select * from DemoTable1597;
这将产生以下输出-
+-------+
| Marks |
+-------+
| 45 |
| 59 |
| 43 |
| 85 |
| 89 |
+-------+
5 rows in set (0.00 sec)
以下是删除ERROR 1093 (HY000)的查询语句。我们在此删除了最低值-
mysql> delete from DemoTable1597
-> where Marks=(
-> select lowestMarks from ( select min(Marks) as lowestMarks from DemoTable1597 ) as deleteRecord
-> ) limit 1;
Query OK, 1 row affected (0.11 sec)
让我们再次检查表的记录-
mysql> select * from DemoTable1597;
这将产生以下输出-
+-------+
| Marks |
+-------+
| 45 |
| 59 |
| 85 |
| 89 |
+-------+
4 rows in set (0.00 sec)
阅读更多:MySQL 教程
极客教程