当前位置: 首页 > 知识库问答 >
问题:

MySQL.如何更新上次检索的记录

韦安顺
2023-03-14

我想对一个MySQL表进行顺序读取,而不需要一个标识符。另外,我想给每个记录的第一列分配一个相关的数字。更新时应使用哪些说明?

太感谢你了。

共有1个答案

孟花蜂
2023-03-14

使用多表更新语法(即join)和row_number窗口函数

DROP TABLE IF EXISTS T;
CREATE TABLE T
(DATES DATE, TODA INT);
INSERT INTO T VALUES ('2021-04-04',1),('2021-04-05',1);

update t join
(select dates,row_number() over (order by dates) rn 
from t) u
on t.dates = u.dates
set toda = rn
where 1 = 1;

select * from t; 

+------------+------+
| DATES      | TODA |
+------------+------+
| 2021-04-04 |    1 |
| 2021-04-05 |    2 |
+------------+------+
2 rows in set (0.001 sec)
 类似资料:
  • 问题内容: 有没有一种方法可以从ElasticSearch中检索有关特定索引的最新更新时间的信息?我的目标是能够知道什么时候是最后一次在索引中插入/更新/删除任何文档。如果无法做到这一点,是否可以在索引修改请求中添加一些内容,以便稍后提供此信息? 问题答案: 您可以从_timestamp获取修改时间 为了更轻松地返回时间戳,您可以设置Elasticsearch来存储它: 如果插入文档然后对其进行查

  • 问题内容: 我需要在一个请求中进行多次更新。 在我有: 因此需要进行更改。 这是我的序列化器代码: 我试图添加: 和 但这不起作用。如何更改此代码以进行多次更新。我的json请求 问题答案: 这是您请求的CreateMixins或UpdateMixins的示例。 ======================查看========================== ====== ==========

  • 问题内容: 我的表中的行超过60000。如何一次将行从40000删除到50000? 问题答案: 您可以使用以下功能: 要么: 很简单?

  • 如何在不创建多个字符串的情况下获得所有列和记录?假设我在那个表中有10列,我不需要把它存储到一个对象中 谢了。

  • 我想从我的学生表中检索最后插入的id并传递到视图。但我不知道怎么做?我使用以下代码在表中插入数据。 有人能帮帮我吗?

  • 问题内容: 我能否找出对Oracle数据库中的表执行最后一条INSERT,UPDATE或DELETE语句的时间,如果是,如何执行? 背景知识:Oracle版本为10g。我有一个定期运行的批处理应用程序,可从单个Oracle表中读取数据并将其写入文件中。如果自上次运行作业以来数据未更改,我想跳过此步骤。 该应用程序用C ++编写,并通过OCI与Oracle通信。它以“普通”用户身份登录到Oracle