当前位置: 首页 > 面试题库 >

具有表别名的SQLite删除[重复]

呼延晋
2023-03-14
问题内容

这个问题已经在这里有了答案

SQLite删除查询错误 (3个答案)

7年前关闭。

我试图通过以下命令对SQLite中的表进行别名化(例如,这本书是我正在阅读“ Ramakrishnan的数据库管理系统”的书)

DELETE FROM Students S WHERE S.sid=12546

此代码给出了语法错误。在不使用别名的情况下,以下代码有效:

DELETE FROM Students WHERE sid=12546

但是,如果我想为表加上别名,该怎么办?有人可以帮忙吗?

谢谢


问题答案:

DELETE语句在单个表上运行,并且不使用表别名。因此您必须将查询用作:

DELETE FROM Students WHERE sid=12546

更新:
SQLite显然不支持使用delete语句进行联接,如语法图所示。简而言之,在SQLite中,一个DELETE命令仅从一个表中删除。所以别名是没有用的



 类似资料:
  • 主要内容:语法,实例SQLite 的 DROP TABLE 语句用来删除表定义及其所有相关数据、索引、触发器、约束和该表的权限规范。 使用此命令时要特别注意,因为一旦一个表被删除,表中所有信息也将永远丢失。 语法 DROP TABLE 语句的基本语法如下。您可以选择指定带有表名的数据库名称,如下所示: 实例 让我们先确认 COMPANY 表已经存在,然后我们将其从数据库中删除。 这意味着 COMPANY 表已存在数据

  • 问题内容: 我必须清理具有重复行的表: 一个可能具有多个值: 我想对整个表执行一个查询,并删除和重复的所有行。在上面的示例中,删除后,我只想剩下1、2、4和5。 问题答案: ;WITH x AS ( SELECT id, gid, url, rn = ROW_NUMBER() OVER (PARTITION BY gid, url ORDER BY id) FROM dbo.table ) SEL

  • 问题内容: 嗨,我正在尝试通过下面的查询删除表中的所有行 我正在表中删除n行。但是表中仍然存在行。我的删除通话有什么问题吗? 问题答案: 您需要先调用以将对数据库所做的所有更改提交给数据库,然后再调用: 来源(Android开发人员参考): 如果任何事务未标记为干净而结束(通过调用setTransactionSuccessful),则更改将回滚。否则,他们将被提交。

  • 我已经将完全相同的数据库表从MYSQL移到SQLite。以下查询在MYSQL中工作 但在SQLITE中,我得到一个“Error near'”。语法错误。使用cast到c的表别名,查询工作良好: Sqlite不喜欢查询的第一个版本的原因是什么?

  • 主要内容:语法,实例您可以暂时把表或列重命名为另一个名字,这被称为别名。使用表别名是指在一个特定的 SQLite 语句中重命名表。重命名是临时的改变,在数据库中实际的表的名称不会改变。 列别名用来为某个特定的 SQLite 语句重命名表中的列。 语法 表 别名的基本语法如下: 列 别名的基本语法如下: 实例 假设有下面两个表,(1)COMPANY 表如下所示: (2)另一个表是 DEPARTMENT,如下所示: 现在

  • 名 Middlename lastname dob 地址 城市 状态 电话 验证日期 它有许多相同的行,除了有效日期。例如: 我希望运行一个脚本,删除除最后一列()以外的所有匹配的重复项,只在表中保留以下内容,这是: 它不起作用,实际上弹出以下错误: 另外,我想根据字母表的最后一个字母分阶段运行它。因此,需要在某个地方添加类似这样的lastname。