MariaDB社区

标题: 请问这样的SQL怎么写? [打印本页]

作者: fxn9801    时间: 2008-5-28 22:20
标题: 请问这样的SQL怎么写?
我是从SQL SERVER 数据库改成MYSQL数据库的。里面有些SQL语句语法有些小差异,我有个分页的SQL ,不知道怎么改成MYSQL 可以运行的语句?请大家帮忙?
语句是:
sql = "select top "+intpagesize+" * from article where fstatus=? and articleClass=? and articleId not in (select top "+((intpage-1)*intpagesize)+" articleId from article order by articleId desc) order by articleId desc";

如何改成在MYSQL下可以运行的语句呢?

我改成这样:

select * from article where fstatus=? and articleClass=? and articleId not in (select articleId from article order by articleId desc limit "+((intpage-1)*intpagesize)+") order by articleId desc limit "+intpagesize

报错:
This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'

我现在知道了。原来是在子查询中不能用limit

可是这句怎么拆开分成2步操作呢?

结帖了。问题已经解决!

[ 本帖最后由 fxn9801 于 2008-5-29 12:22 编辑 ]
作者: kider    时间: 2008-6-3 10:00
谢谢分享...
作者: kingswim    时间: 2010-4-30 14:00
太感谢楼主了,我也在转移这个,学校教的是sqlsever2000,我还得一个个改,真麻烦
不过学校用delphi,我ubuntu上就难办了




欢迎光临 MariaDB社区 (http://123.56.88.72/) Powered by Discuz! X3.2