如果选中SELECT sqlite子句:https://www.sqlite.org/lang_select.html
您将看到OFFSET要求EXPR。从数据库查询中获取正确的结果。 当我去检查什么是EXPR时。 (请参阅:https://www.sqlite.org/syntax/expr.html)我理论上看到应该有一种方法来表示偏移后的函数。举个例子:
select * from my_table limit 50 offset count(id);
计数函数会给你数值,但我们知道这是不可能的。所以我的问题是:有没有办法添加函数来抵消,或者我是否以错误的方式从链接中读取内容?
答案 0 :(得分:1)
可以使用LIMIT / OFFSET表达式中的函数:
<form class="form-inline" role="form" action="assets/subscribe.php" method="post">
<div class="form-group">
<label class="sr-only" for="subscribe-email">Email address</label>
<input type="text" name="email" placeholder="Enter your email..." class="subscribe-email form-control" id="subscribe-email">
</div>
<button type="submit" class="btn">Receive your free eBook</button>
<br>
<div class="checkbox">
<label>
<input type="checkbox" class="checked"> Receive Our Monthly Newsletter
</label>
</div>
</form>
<div class="success-message"></div>
<div class="error-message"></div>
SELECT 42 LIMIT length('x') OFFSET round(0.123);
函数在这里不起作用,因为它是一个聚合函数,在OFFSET子句中,没有可以应用它的表或组。
答案 1 :(得分:-1)
它一般不起作用。您必须在额外查询中选择您的计数(id)。
如需更多帮助,请点击此处: Sqlite LIMIT / OFFSET query