常用sql随笔

368 阅读2分钟

前言:

最近用express+mysql写了一个简单的数据接口,至于接口代码嘛写的很丑就不想拿出来写了,不过可以记录一下这次用到的一些sql语句,仅仅为以后使用便于查询做个记录,首先声明一下本人并没有系统学过sql,如有错误欢迎各位大佬指正,谢谢大家!

sql集:

  1. 获取表中数据:
 SELECT * FROM `users`

参数说明:users为表名

  1. 获取详情数据:
 SELECT * FROM `users` WHERE id =?

参数说明:?是从接口中传递过来的id值

  1. 添加数据:
 INSERT INTO `users` (`username`,`email`,`wechat`) VALUES (?,?,?)

参数说明:username,email,wechat为需要添加的字段,?,?,?为需要添加的值

  1. 批量添加数据:
 INSERT INTO `users` (`username`,`email`,`wechat`) VALUES ?

参数说明:?为前端传入的字段值,需要为[["李四", "12345", "12345"],["李四", "12345", "12345"]]的格式

  1. 删除数据:
 DELETE FROM `users` WHERE `users`.`id`=?

参数说明:?是从接口中传递过来的id值

  1. 批量删除数据:
 DELETE FROM `users` WHERE `users`.`id` in (?)

参数说明:?为前端传入的值,需要为id数组的格式["24", "26", "27"]

  1. 修改数据:
UPDATE `users` SET `username`='" + param.username + "',`email`='" + param.email + "',`wechat`='" + param.wechat + "' WHERE `id`='" + param.id + "'"

参数说明:param的值为前端传入的对象

  1. 批量修改:

声明:并没有固定的批量修改sql,我是采用的sql拼接来处理的,另外一般是禁止这种语句的执行的,必须要开启之后才能生效,否则会报错!!!

 sql += "UPDATE `users` SET `username`='" + arrObj[i].username + "',`email`='" + arrObj[i].email + "',`wechat`='" + arrObj[i].wechat + "' WHERE `id`='" + arrObj[i].id + "';";

参数说明: 前端必须要传一个带id的数组对象

  1. 数据查询:
 SELECT * FROM `users` WHERE `username`=?

参数说明:username为需要查询的字段,一般是根据title进行模糊查询,在此不深究。

  1. 数据排序:
 "SELECT * FROM `users` ORDER BY" + "`" + req.query._sort + "`" + req.query._order;

参数说明: req.query._sortgen为根据哪个字段排序,req.query._order为排序规则:desc降序,desc升序

  1. 数据分页:

说明:需要获取到总的数据条数才知道需要能分多少页,总条数的查询和数据的查询可以拼接执行,也可分次执行,在此我选择的执行两次。

 SELECT COUNT(*) AS `count` FROM `users`//获取总的数据条数

参数说明:count为获取到总的数据条数

 SELECT * FROM `users` ORDER BY `users`.`id` ASC LIMIT ?,?//第几页,每页多少条数据

参数说明:?第一个为数据开始的位置,?第二个为数据结束的位置。

后记:

这不是什么大全,这只是我写接口中的sql,在此做个记录。不喜勿喷,谢谢!另外如果对大家有帮助,欢迎各位点赞或者评论!