`
zph999
  • 浏览: 18227 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

update where in limit

 
阅读更多
update tb1 a set a.end_date ='2011-05-23' where a.id = (
select h.id from
(
select id from tb2 history
where history.adsite_id =141 and history.en_id=7
order by history.id desc limit 0,1 ) as h
)

update的子条件中不能直接带 limit关键字,可以在外围套一层。
分享到:
评论

相关推荐

    mysql中错误:1093-You can’t specify target table for update in FROM clause的解决方法

    在MySQL中,错误1093 - "You can't specify target table for update in FROM clause" 是一个常见的问题,它发生在尝试在`UPDATE`语句的`FROM`子句中直接引用要更新的同一张表时。这个错误表示MySQL不支持在`UPDATE`...

    mysql update语句的用法详解.doc

    需要注意的是,UPDATE语句中不能使用ORDER BY或LIMIT子句与multiple-table UPDATE同时使用。在一个被改变的multiple-table UPDATE中, 有些列被引用。您只需要这些列的UPDATE权限。有些列被读取了,但是没被修改。您...

    MySQL报错1093 – You can’t specify target table ‘t’ for update in FROM clause, Time: 0

    在MySQL数据库中,错误代码1093 - "You can’t specify target table ‘t’ for update in FROM clause" 是一个常见的错误,它通常发生在尝试在一个`UPDATE`语句的`FROM`子句中直接引用要更新的目标表时。...

    PHP100视频教程 9:数据库中的常用SQL语句.rar

    软件介绍 1、SELECT 查询语句和条件语句 SELECT 查询字段 FROM 表名 WHERE 条件 查询字段:可以使用...UPDATE 表名 SET 字段 = 值 WHERE 条件 limit 5、Delete 删除语句 DELETE FROM 表名 WHERE 条件 limit

    mysql update语句的用法详解

    [LIMIT row_count] 其次,多表的UPDATE语句:   UPDATE [LOW_PRIORITY] [IGNORE] table_references SET col_name1=expr1 [, col_name2=expr2 …] [WHERE where_definition] UPDATE语法可以用新值

    SQL语句详解 MySQL update的正确用法

    单表的MySQL UPDATE语句: ... [LIMIT row_count]  多表的UPDATE语句: UPDATE [LOW_PRIORITY] [IGNORE] table_references SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_def

    Mysql中limit的用法方法详解与注意事项

    - `LIMIT`不能用于`UPDATE`或`DELETE`语句的子查询,但可以直接在这些语句中使用。 - 在`UNION`操作中,`LIMIT`应用于整个结果集,而不是每个单独的`SELECT`语句。 - 当`LIMIT`与`GROUP BY`一起使用时,返回的...

    DML语言[参考].pdf

    * SELECT column_name(s) FROM table_name WHERE column_name IN (value1, value2,...); 4.6 BETWEEN 操作符 BETWEEN 操作符用于指定一个范围。例如: * SELECT * FROM table_name WHERE column_name BETWEEN 值...

    SQL查询最新时间字段及其他字段.rar

    在这个查询中,`WHERE UserID = 1`过滤了用户ID为1的记录,然后通过`ORDER BY`和`LIMIT`获取这些记录中的最新一条。 在实际应用中,SQL查询可能更复杂,涉及到多个表的联接(JOINs)、子查询(Subqueries)或者其他...

    Oracle 1z0-051

    cust_credit_limit = (SELECT cust_credit_limit FROM customers WHERE cust_id = 2566) WHERE cust_id = 2360; B. UPDATE customers SET (cust_income_level, cust_credit_limit) = (SELECT cust_income_level,...

    解析mysql与Oracle update的区别

    首先,单表更新在MySQL和Oracle中的语法基本一致,都是通过`UPDATE table_name SET column_name = value WHERE condition`来实现。但在多表更新时,两者就有所区别了。 在Oracle中,多表更新相对较为严格。如示例所...

    mysql update正则替换sql语句

    - 使用`LIMIT`关键字限制每次更新的行数,可以防止因错误导致大量数据被修改。 - 正则表达式在MySQL中支持有限,与Perl或JavaScript等语言中的正则表达式可能存在差异。 总之,`UPDATE`语句结合`REPLACE()`和正则...

    MySQL中SELECT+UPDATE处理并发更新问题解决方案分享

    vipMember = SELECT * FROM vip_member WHERE uid=1001 LIMIT 1; if vipMember.end_at (): UPDATE ... # 续1个月 else: UPDATE ... # 续N个月 ``` 然而,这种做法在并发环境下存在数据覆盖的风险。 解决方案A:将...

    mysql性能优化.SQL语句性能优化

    例如,`UPDATE table1 JOIN table2 ON ...` 比 `UPDATE table1 WHERE id IN (SELECT id FROM table2 WHERE ...)` 更快。 4. **使用WITH(公用表表达式)**: MySQL的WITH语句可以创建临时的结果集,类似于视图,但...

    SQL必须掌握的基础知识.doc

    - **IN**:用于判断某列的值是否在指定的列表中,如`WHERE column IN (value1, value2, ...)`. - **BETWEEN**:用于判断值是否在两个值之间,如`WHERE column BETWEEN value1 AND value2`. - **TOP** 和 **LIMIT*...

    命令行选课系统

    UPDATE SC SET CID = (SELECT CID FROM course WHERE TEACHER = 'Wen') WHERE CID IN (SELECT CID FROM course WHERE TEACHER = 'Li'); ``` - **用delete命令删除表SC中分数在60以下的记录**: ```sql DELETE ...

Global site tag (gtag.js) - Google Analytics