如何为Postgresql转换这个mysql限制子句:
limit $a,$b
可能不是特定的postgresql解决方案,而是sql标准
查询失败:ERREUR:la syntaxe LIMIT#,#n'estpassupportée
版
"select * from preference where (id_membre ='184') order by 1 LIMIT 0 OFFSET 8";
使用mysql返回4行,使用postgresl返回0行!
答案 0 :(得分:1)
Postgres语法为limit x offset y
,如here所述。
如果您仍然遇到变量问题,可以使用where
子句替换它。如果您有这样的查询:
select . . .
order by <something>
你可以得到你想要的东西:
select t.* -- or list of columns without seqnum
from (select . . ., row_number() over (order by <something>) as seqnum
) t
where seqnum between $a and $a + $b
答案 1 :(得分:0)
限制0正在完全按照它所说的做。限制为0行!查询可能运行得非常快!
对我而言,PostgreSQL对limit 0
的含义有着非常直观的看法,这一点并不令人惊讶。不幸的是,令我惊讶的是,MySQL对相同的