网站建设知识
mysql查询最后几条和生成一条包含多条记录的插入语句
2025-07-22 10:01  点击:0

1、查询第一行记录: select * from table limit 1

2、查询第n行到第m行记录

select * from table1 limit n-1,m-n;

SELECT * FROM table LIMIT 5,10;返回第6行到第15行的记录

select * from employee limit 3,1; // 返回第4行

3、查询前n行记录

select * from table1 limit 0,n;

select * from table1 limit n;

4、查询后n行记录

select * from table1 order by id desc limit n;//倒序排序,取前n行 id为自增形式

5、查询一条记录($id)的下一条记录

select * from table1 where id>$id order by id asc limit 1

6、查询一条记录($id)的上一条记录

select * from table1 where id<$id order by id desc limit

7、生成一条包含多条数据的插入语句(该方法可以快速插入)

mysqldump -u用户名 -p密码 数据库名 表名 --where="筛选条件" > 导出文件路径

例子:

从meteo数据库的sdata表中导出sensorid=11 且 fieldid=0的数据到 /home/xyx/Temp.sql 这个文件中

mysqldump -uroot -p123456 meteo sdata --where=" sensorid=11 and fieldid=0" > /home/xyx/Temp.sql

另外你还可以直接导出 文本文件*.txt

mysqldump -uroot -p123456 meteo sdata --where=" sensorid=11 and fieldid=0" > /home/xyx/Temp.txt

8、快速插入方法

如果同时从同一个客户端插入很多行,使用含多个VALUE的INSERT语句同时插入几行。这比使用单行INSERT语句快(在某些情况下快几倍)。

INSERT INTO a VALUES (1,23),(2,34),(4,33);

锁定表可以加速用多个语句执行的INSERT操作:

LOCK TABLES a WRITE;

INSERT INTO a VALUES (1,23),(2,34),(4,33);

INSERT INTO a VALUES (8,26),(6,29);

UNLOCK TABLES;