sqlite的limit使用

如果我要取11-20的Account表的数据,则为: Select * From Person  Limit 9 Offset 10;
表示从Person  表获取数据,跳过10行,取9行 。也可以这样写 select * from account limit 10,9 和上面的的效果一样。

通用公试:

sql = "select * from TableName where "+条件+" order by "+排序+" limit "+要显示多少条记录+" offset "+跳过多少条记录;

如: select * from Contacts limit 15 offset 20     表示: 从Contacts表跳过20条记录选出15条记录

SELECT * FROM table  LIMIT [offset,] rows | rows OFFSET offset

在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了上面这样一个功能。

LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1): 为了与 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。

mysql> SELECT * FROM table LIMIT 5,10; //检索记录行6-15

//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1: mysql> SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last.

   //如果只给定一个参数,它表示返回最大的记录行数目:    mysql> SELECT * FROM table LIMIT 5;     //检索前 5 个记录行

//换句话说,LIMIT n 等价于 LIMIT 0,n。

时间: 2024-10-06 11:40:02

sqlite的limit使用的相关文章

[Sqlite] 移动嵌入式数据库Sqlite的日常SQL操作语句汇总

序言:     嵌入式数据库Sqlite的基本sql使用汇总,使用测试起来,与关系型数据库mysql在语法上有很多的相似之处,先准备测试数据: CREATE TABLE COMPANY(ID INT NOT NULL, NAME VARCHAR(20),AGE INT,ADDRESS VARCHAR(20),SALARY DECIMAL(7,2)); INSERT INTO "COMPANY" VALUES(1,'Paul',32,'California',20000); INSERT

[Sqlite] 移动嵌入式数据库Sqlite日报SQL操作语句汇总

前言:     嵌入式数据库Sqlite基本sql使用摘要.使用测试,与关系数据库mysql在语法上有非常多的类似之处,先准备測试数据: CREATE TABLE COMPANY(ID INT NOT NULL, NAME VARCHAR(20),AGE INT,ADDRESS VARCHAR(20),SALARY DECIMAL(7,2)); INSERT INTO "COMPANY" VALUES(1,'Paul',32,'California',20000); INSERT IN

【SQLite】 语法

一 . 创建数据库 1. 只需创建数据库,只需创建文件,操作时将连接字符串指向该文件即可 2. 连接字符串 : data source = FilePath; 不能加密所以没有密码 二 . 创建表 1. 语法 : CREATE TABLE TableName(str TEXT,pic BLOB,int INTEGER) 2. 字段类型 : 可以忽略类型,你把所有类型设为 TEXT 都没问题,但为了方便使用和阅读,建议设置对应类型(图片,二进制 BLOB), 不然读取数据时转换可能会出问题 三 .

sqlite详细介绍

------------------------------------------------------------------------------SQLite简介------------------------------------------------------------------------------>> SQLite是一个软件库,实现了自给自足的.无服务器的.零配置的.事务性的 SQL 数据库引擎.SQLite是一个增长最快的数据库引擎,这是在普及方面的增长,与它的

Sqlite基础及其与SQLServer语法差异

1 TOP 这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录: SELECT TOP 10 * FROM [index] ORDER BY indexid DESC; 但是这条SQL语句在SQLite中是无法执行的,应该改为: SELECT * FROM [index] ORDER BY indexid DESC limit 0,10; 其中limit 0,10表示从第0条记录开始,往后一共读取10条 2 创建视图(Create View) SQL

sqlite 的基本使用3

AND 运算符和OR运算符 这两个运算符一般被称为连接运算符,用来缩小sqlite所选的数据 AND 运算符是当所有的条件都为真时,表达式才为真 sqlite> select * from student where id = 2 and name = "bb"; id name age ---------- ---------- ---------- 2 bb 12 sqlite> OR运算符是当其中一个条件为真时,表达式才为真 sqlite> select * f

SQLlite(WebSQL)如何排序并分页查询(SQLlite语法)

SELECT * FROM Table ORDER BY ID DESC Limit 10,9 limit语义:跳过10行,取9行 参考: SQLite的limit用法 如果我要去11-20的Account表的数据Select * From Account Limit 9 Offset 10;以上语句表示从Account表获取数据,跳过10行,取9行嗯,我觉得这个特性足够让很多的web中型网站使用这个了.也可以这样写 select * from account limit10,9和上面的的效果一

SQL反模式学习笔记16 使用随机数排序

2014-10-15 10:06:48 目标:随机排序,使用高效的SQL语句查询获取随机数据样本. 反模式:使用RAND()随机函数 SELECT * FROM Employees AS e ORDER BY RAND() Limit 1 缺点:无法利用索引,每次选择的时候都不同且不可预测.进行全表遍历,性能极差. 如何识别反模式:当出现以下情况时,可能是反模式 1.在SQL中,返回一个随机行速度非常慢: 2.要获取所有的记录然后随机一个.要如何增加程序可使用的内存大小? 3.有些列出现的频率比

Sqlite中的limit的用法

在Sqlite3中没用top语法的结构,Sqlite3中是用limit来实现这样的功能的. mytable表中的数据如下: id    value 1    hello 2    你们 3    你们 4    Very Good 5    ! 如下SQL语句:select * from mytable limit 3;显示的查询结果是: 1    hello 2    你们 3    你们 相当于Sql Server中的Top 3:但是limit的功能比top强大,尤其是在分页功能上. 如下S