Lio*_*rom 25 php mysql sql postgresql activerecord
我正在寻找一种方法来实现:
SELECT * FROM table
Run Code Online (Sandbox Code Playgroud)
但通过使用LIMIT和OFFSET喜欢这样:
SELECT * FROM table LIMIT all OFFSET 0
Run Code Online (Sandbox Code Playgroud)
有没有办法使用 LIMIT和OFFSET 编写SQL语句但仍然获得所有结果?
(当然我可以使用一个IF声明,但如果可能的话我宁愿避免使用它)
任何帮助,将不胜感激!
sro*_*oes 30
从MySQL文档:
要从特定偏移量检索所有行直到结果集的末尾,可以使用一些大数字作为第二个参数.此语句检索从第96行到最后一行的所有行:
SELECT*FROM tbl LIMIT 95,18446744073709551615;
所以获取所有行可能如下所示:
SELECT * FROM tbl LIMIT 0,18446744073709551615;
Run Code Online (Sandbox Code Playgroud)
Luk*_*zda 11
是的,可以通过提供NULL:
SELECT * FROM tab LIMIT NULL OFFSET NULL\nRun Code Online (Sandbox Code Playgroud)\n\n\n\n\nLIMIT ALL 与省略 LIMIT 子句相同,就像带有 NULL 参数的 LIMIT 一样。
\n
\n\n\n值NULL、空字符串 (\'\')和$$$$也被接受并被视为\xe2\x80\x9cunlimited\xe2\x80\x9d;这主要对于连接器和驱动程序(例如 JDBC 驱动程序)有用,如果它们在将参数动态绑定到语句时收到不完整的参数列表。
\nRun Code Online (Sandbox Code Playgroud)\nSELECT * FROM demo1 ORDER BY i LIMIT NULL OFFSET NULL;\n\nSELECT * FROM demo1 ORDER BY i LIMIT \'\' OFFSET \'\';\n\nSELECT * FROM demo1 ORDER BY i LIMIT $$$$ OFFSET $$$$; \n
| 归档时间: |
|
| 查看次数: |
71990 次 |
| 最近记录: |