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

使用MySQL中的限制更新多行?

东方夕
2023-03-14
问题内容
    UPDATE messages set test_read =1 
        WHERE userid='xyz' 
        ORDER BY date_added DESC  
        LIMIT 5, 5 ;

我正在尝试使用此查询使用限制更新一组5行,但mysql显示错误..下面的一个正在工作

    UPDATE messages set test_read =1 
        WHERE userid='xyz' 
        ORDER BY date_added DESC  
        LIMIT 5 ;

为什么第一个不起作用?


问题答案:

如果您确实必须这样做,可以使用以下方法:

 UPDATE messages SET test_read=1
 WHERE id IN (
     SELECT id FROM (
         SELECT id FROM messages 
         ORDER BY date_added DESC  
         LIMIT 5, 5
     ) tmp
 );


 类似资料:
  • 问题内容: 我知道您可以一次插入多行,是否可以在MySQL中一次更新多行(如在一个查询中)? 编辑:例如,我有以下内容 我想将以下所有更新合并到一个查询中 问题答案: 是的,这是可能的-您可以在插入的键更新中使用INSERT…。 使用您的示例:

  • 问题内容: 我有两个表,并且想为LEFT JOIN中的所有行更新T1中的字段。 举一个简单的例子,更新以下结果集的所有行: 在MySQL手册指出: 多表UPDATE语句可以使用SELECT语句中允许的任何类型的联接,例如LEFT JOIN。 但是我在记录的多表UPDATE中找不到执行此操作的正确语法。 正确的语法是什么? 问题答案: 请注意,使用/ 语法会更有效: 有关性能的详细信息,请参见我的博

  • 本文向大家介绍使用MySQL WHERE子句中的多个值进行更新,包括了使用MySQL WHERE子句中的多个值进行更新的使用技巧和注意事项,需要的朋友参考一下 让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 这将产生以下输出- 这是使用WHERE子句中的多个值更新的查询- 让我们再次检查表记录- 这将产生以下输出-

  • 问题内容: 我的桌子: 我需要使用,按ID分组来更新字段: 对于ID 1,应为 对于ID 2,应为 预期输出: 我该如何看重? 我的代码: 这是行不通的。 问题答案: 不幸的是,您无法在中更新与其自身联接的表。 您需要创建一个函数作为解决方法:

  • 问题内容: 使用上面的代码,数据库kuis中表Writers的第三行值将用new_value更新,并且输出将为 Number od rows更新:1 我应该如何同时更新多行? 问题答案: 可能您正在寻找cursor.executemany。

  • 问题内容: 如何在MySQL中更新多个值? 这不起作用: 问题答案: 您需要在两个不同的值之间添加一个逗号。例如: