使用Select语句从SQLite删除

沃尔夫斯特

我有以下SELECT声明,

SELECT * From MyTable as t
WHERE
t.Key1 =
(SELECT Max(r.Key1) From MyTable as r
WHERE (Key2 = t.Key2 AND Key3 = t.Key3 AND Key4 = t.Key4))
AND
(Key2 = t.Key2 AND Key3 = t.Key3 AND Key4 = t.Key4)

它将选择我要从中删除的所有记录MyTable但是,当我尝试实际删除记录(即通过更改SELECT *为)时DELETE,出现错误,并且我相信这是因为您不能在DELETE语句中使用别名

那我该如何删除这些选定的记录MyTable呢?

CL。

确实不可能在DELETE语句中为表名使用别名。

但是,该表仍具有名称。只要此表的所有其他实例都具有别名,您就可以明确地引用它们中的任何一个:

DELETE From MyTable
WHERE
MyTable.Key1 =
(SELECT Max(r.Key1) From MyTable as r
WHERE (Key2 = MyTable.Key2 AND Key3 = MyTable.Key3 AND Key4 = MyTable.Key4))
AND
(Key2 = MyTable.Key2 AND Key3 = MyTable.Key3 AND Key4 = MyTable.Key4)

(此查询的最后一行没有意义,因为它不是子查询的一部分,Key2并且MyTable.Key2引用同一张表。)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQLite SELECT语句中的可选参数

来自分类Dev

SQLite中的Select语句不返回结果

来自分类Dev

Android SQLite select语句的异常行为

来自分类Dev

SQLite SELECT语句中的可选参数

来自分类Dev

SQLITE 的 SELECT IN 语句的语法是什么?

来自分类Dev

SQLite条件SELECT语句-多个条件但一个语句

来自分类Dev

有什么办法删除重复的SELECT语句?

来自分类Dev

删除INSERT SELECT语句中的dupilcates查询

来自分类Dev

根据select语句删除重复的行

来自分类Dev

根据条件在SELECT语句中删除行

来自分类Dev

如何从select语句中删除逗号

来自分类Dev

使用子查询删除语句

来自分类Dev

使用设置代数的SELECT语句

来自分类Dev

使用select语句更新多行

来自分类Dev

使用Select语句作为别名

来自分类Dev

在select中使用Case语句

来自分类Dev

使用SELECT删除SQL

来自分类Dev

Android SQLite:删除语句准备查询的问题

来自分类Dev

如何在sqlite中使用if语句

来自分类Dev

使用sqlite在插入语句中的位置

来自分类Dev

使用 SQLite UPDATE 语句连接多表

来自分类Dev

在将select * sys.synonyms与case语句一起使用时,删除并创建同义词

来自分类Dev

删除并创建同义词,同时将select * sys.synonyms与case语句一起使用

来自分类Dev

SQLite:循环遍历SELECT语句,替换WHERE子句

来自分类Dev

如何在SQLite Select语句中正确表达参数

来自分类Dev

Javascript SQLite:带有WHERE IN子句的SELECT语句

来自分类Dev

仅返回SQLite Select语句中的Last值

来自分类Dev

Flex App Sqlite Select语句返回[object Object]

来自分类Dev

SQLIte SELECT语句在Visual C#中返回相同的值