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

如何从MySQL中的表中删除最后一条记录(条件)

宓季同
2023-03-14
问题内容

我有一个这样的 LoginTime 表:

id | user_id | datetime
1  |   1     | 2011-01-17 18:51:05
2  |   1     | 2011-01-18 18:51:05  
3  |   1     | 2011-01-19 18:51:05  
4  |   2     | 2011-01-19 18:51:05

我想删除的最后一条记录user_id=1。用户的最后一条记录可以通过识别datetime

如何使用一个查询执行此操作。


问题答案:

您需要按user_id(例如WHERE user_id = 1)过滤表,然后按时间(例如ORDER BY
datetime)对其进行排序,然后将查询限制为一项(例如LIMIT1),然后删除此查询的结果。最后,您将获得如下查询:

DELETE FROM LoginTime WHERE user_id=1 ORDER BY datetime DESC LIMIT 1


 类似资料:
  • 问题内容: 我正在使用mysql并遇到一些问题。我想检索插入的最后一行。 <<以下是详细>> 以下是我创建表格的方式。 我在其中插入了四个值,如下所示 当我执行时,我得到如下输出 当我尝试下面的代码时, 我得到如下输出。 但是,当我使用代码时,出现错误 使用时,表中没有任何数据。 链接以播放数据 注意: 这里我使用4只是为了获得所需的输出。稍后我可以从查询中获取 如果我只想查看最后一条记录,请建议

  • 问题内容: 删除unt_uid为null的活动 这将是最快的方法,但是在该语句完成之前没有人可以访问数据库/表,因此这是不可行的。 我定义了一个游标以在工作时间内完成此任务,但无论如何对生产率的影响很大。那么如何删除这些记录,以保证该数据库的正常使用? 它是32位Win2003上的SQL-2005 Server。第二个问题是:您估计这项工作要完成多长时间(6个小时或60个小时)?(是的,我知道这取

  • 问题内容: 我有一张桌子,上面有几条记录。有一个ID字段。我想选择具有最新ID(即最高ID)的记录。 有任何想法吗? 问题答案:

  • 问题内容: 我正在寻找连接2个表并仅显示明细表的最后一条记录的正确SQL代码。 我有一个带有2个表的数据库, 每个交易都有多个评论,但是我想创建一个显示所有交易的视图,并且仅显示每个交易的最后一条评论(由CommentTime确定)字段 问题答案: 编辑:我没有足够接近地阅读初始问题,也没有注意到视图中需要所有DEALS行。以下是我的修改后的答案:

  • 问题内容: 有一个包含数据的表,如下所示: 如果我运行查询,我将得到的结果为: 什么查询将返回以下结果? 即,应返回每个组中的最后一条记录。 目前,这是我使用的查询: 但这看起来效率很低。还有其他方法可以达到相同的结果吗? 问题答案: MySQL 8.0现在支持窗口功能,就像几乎所有流行的SQL实现一样。使用这种标准语法,我们可以编写每组最多n个查询: 以下是我在2009年为此问题写的原始答案:

  • 问题内容: 我试图弄清楚如何禁止在stdout上显示用户输入。 后跟任何打印语句将保留用户键入的内容。不会显示用户键入的内容,但会保留“ Password:”提示。 为了解决这个问题,我只想删除最后一行(这也会从行尾删除换行符)。 问题答案: 您可能可以使用VT100控制代码执行所需的操作。 可能是这样的: