mysql查詢最後幾條和生成一條包含多條記錄的插入語句

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;

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *