mySQL 子查询限制 [英] mySQL subquery limit

查看:39
本文介绍了mySQL 子查询限制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这可能是一个简单的...我怎样才能通过这个查询实现我想要的:

从没有 id 的帖子中删除(SELECT id FROM posts order by timestamp desc limit 0, 15)

所以,简而言之,我想删除所有不在最新 15 条上的帖子.

当我尝试那个查询时,我明白了

<块引用>

MySQL 尚不支持 'LIMIT &IN/ALL/ANY/SOME 子查询

编辑

mySQL Server 版本:5.5.8mySQL 客户端版本:mysqlnd 5.0.7-dev - 091210 - $Revision: 304625 $

<块引用>

错误:#1235 - 此版本的 MySQL 尚不支持 'LIMIT &IN/ALL/ANY/SOME 子查询'

解决方案

试试这个:

删除发件人WHERE id 不在 (选择 * 从 (选择 ID发件人ORDER BY timestamp desc limit 0, 15)作为 t);

This is probably an easy one... how can I achieve what i want with this query:

delete from posts where id not in
(SELECT id FROM posts order by timestamp desc limit 0, 15)

so, to put it in a nutshell, I want to delete every post that isn't on the latest 15.

When I try that query, I get that

MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery

EDIT

mySQL Server version: 5.5.8
mySQL Client version: mysqlnd 5.0.7-dev - 091210 - $Revision: 304625 $

Error: #1235 - This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'

解决方案

Try this:

DELETE 
FROM posts 
WHERE id not in (
      SELECT * FROM (
            SELECT id 
            FROM posts 
            ORDER BY timestamp desc limit 0, 15
      ) 
      as t);

这篇关于mySQL 子查询限制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆