MySQL - 使用 LIMIT 更新查询

MySQL - UPDATE query with LIMIT(MySQL - 使用 LIMIT 更新查询)
本文介绍了MySQL - 使用 LIMIT 更新查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想更新表中从 1001 到下一个 1000 的行.

I want to update rows in my table with starting from 1001 to next 1000.

我尝试了以下查询:

UPDATE `oltp_db`.`users` SET p_id = 3 LIMIT 1001, 1000

  1. 这给了我语法错误.这样对吗?我在这里做错了吗.
  2. 我们可以通过这种方式限制更新吗?

此外,我尝试更新的行的 p_id 列具有 Null 值,该列的数据类型为 INTEGER.因此,我什至无法使用以下查询进行更新:

Also, the rows that I am trying to update are having Null value for the column p_id which is having data type INTEGER. Due to this I am not even able to update using following query:

UPDATE `oltp_db`.`users` SET p_id = 3 WHERE p_id = null

  1. 我上面的查询是否正确?
  2. 可以做些什么来实现这一目标?

推荐答案

处理空值时,= 与空值不匹配.您可以使用 IS NULLIS NOT NULL

When dealing with null, = does not match the null values. You can use IS NULL or IS NOT NULL

UPDATE `smartmeter_usage`.`users_reporting` 
SET panel_id = 3 WHERE panel_id IS NULL

LIMIT 可与 UPDATE 一起使用,但仅与 row count 一起使用

LIMIT can be used with UPDATE but with the row count only

这篇关于MySQL - 使用 LIMIT 更新查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Hibernate reactive No Vert.x context active in aws rds(AWS RDS中的休眠反应性非Vert.x上下文处于活动状态)
Bulk insert with mysql2 and NodeJs throws 500(使用mysql2和NodeJS的大容量插入抛出500)
Flask + PyMySQL giving error no attribute #39;settimeout#39;(FlASK+PyMySQL给出错误,没有属性#39;setTimeout#39;)
auto_increment column for a group of rows?(一组行的AUTO_INCREMENT列?)
Sort by ID DESC(按ID代码排序)
SQL/MySQL: split a quantity value into multiple rows by date(SQL/MySQL:按日期将数量值拆分为多行)