前言:
上篇文章不知道什么原因不能被訪問阀湿,申訴感覺麻煩重新整理了下
一.實(shí)現(xiàn)簡易接口不會的同學(xué)移步:node實(shí)現(xiàn)簡易接口
1.mysql中提供的分頁的方法 : select * from 表名 limit m,n
/*
* 分頁查詢
* mysql 提供的分頁方法: limit m,n ==>m代表從第幾號位開始赶熟,n: 代表選取的個數(shù)
** eg(前10條數(shù)據(jù)):select * from websites limit 0,10 ==>從第一號位開始,取10條數(shù)據(jù) (當(dāng)前page_num=1) ;m=(1-1)*10
** eg(11-20條數(shù)據(jù)):select * from websites limit 10,10 ==>(當(dāng)前page_num=2) ; m=(2-1)*10
* 由兩個例子可見sql分頁語句應(yīng)為:
select * from table limit (page_num-1)*page_size,page_size;
其中page_num是頁碼陷嘴,page_szie是每頁顯示的條數(shù)
*/
2.具體代碼
app.get('/api/getAll', function (req, res) {
const page_num = req.query.page_num //當(dāng)前的num
const page_size = req.query.page_size //當(dāng)前頁的數(shù)量
const params = [(parseInt(page_num) - 1) * parseInt(page_size), parseInt(page_size)]
var sql = "select * from websites limit ?,?"
connection.query(sql, params, function (err, result) {
if (err) {
console.log('err', err.message)
res.json({
code: 1,
message: '查詢失敗'
})
} else {
let sqlTotal = 'select count(*) as total from websites' //as更換名稱
connection.query(sqlTotal, function (error, among) {
if (error) {
console.log(error);
} else {
let total = among[0]['total'] //查詢表中的數(shù)量
res.json({
result: 1,
status: 200,
message: "success",
data: result,
paging: {
page_num: page_num,
page_size: page_size,
total: total
}
})
}
})
}
})
})
3.返回數(shù)據(jù)的格式