博客
关于我
普歌-史上最全的SQL增删改查通用语法语句
阅读量:344 次
发布时间:2019-03-04

本文共 1828 字,大约阅读时间需要 6 分钟。

史上最全的SQL增删改查通用语法语句


添加数据

INSERT语法

insert into 表名(列名1, 列名2,…列名n) values(值1, 值2,…值n);
  • 注意事项
  • 列名和值要一一对应。
  • 如果不定义列名,默认给所有列添加值。
  • 非数字类型字段需用引号包裹(单双引号均可)。

示例

-- 插入单行数据insert into 用户信息(用户名, 密码) values('admin', '123456');-- 插入多行数据insert into 用户信息(用户名, 密码) values('user1', 'userpass'), ('user2', 'userpass2');

删除数据

DELETE语法

delete from 表名 [where 条件];
  • 注意事项
  • 不加条件默认删除所有记录。
  • 不推荐使用 delete from 表名;,因为会执行多次删除操作。
  • 建议使用 TRUNCATE TABLE 表名;,效率更高。

示例

-- 删除所有记录delete from 用户信息;-- 删除符合条件的记录delete from 用户信息 where 用户名 = 'admin';

修改数据

UPDATE语法

update 表名 set 列名1 = 值1, 列名2 = 值2,… [where 条件];
  • 注意事项
    • 如果不加条件,所有记录都会被修改。

示例

-- 更新部分字段update 用户信息 set 用户名 = 'newUser', 密码 = 'newPass' where 用户名 = 'admin';

查询数据

SELECT语法

select 字段名1,字段名2… from 表名;
  • 注意事项
  • 使用 * 可以替代所有字段。
  • 使用 distinct 去除重复记录。
  • 支持四则运算和特殊函数:
    • ifnull 处理 null 值。
    • concat 合并字段内容。
  • 可以为字段起别名,使用 as

示例

-- 查询所有字段select * from 用户信息;-- 查询指定字段并去重select distinct 用户名 from 用户信息;-- 查询计算字段select ifnull(用户年龄, '未知') as 年龄 from 用户信息;

条件查询

WHERE子句

where 条件;
  • 常用条件
    • 不等于:!=, <>
    • 范围:between, in
    • 模糊查询:like
    • 占位符:_, %
    • 空值:is null
    • 逻辑运算:and, or, not

示例

-- 查询年龄大于30岁的用户where 用户年龄 > 30;-- 查询用户名中包含'admin'的用户where 用户名 like '%admin%';-- 查询用户ID在指定集合中的用户where 用户ID in (1, 2, 3);

查询扩展

排序查询

order by 排序字段1 ASC, 排序字段2 DESC;
  • 注意事项
    • 多个排序字段时,按字段顺序依次排序。

示例

-- 按多个字段排序order by 用户年龄 DESC, 用户名 ASC;-- 按年龄排序,默认升序order by 用户年龄;

聚合函数

count, max, min, sum, avg 等
  • 注意事项
    • 聚合函数默认忽略 null 值。
    • 使用 count(*) 时,包括 null

示例

-- 计算总记录数select count(*) from 用户信息;-- 找到最大用户名长度select max(长度(用户名)) from 用户信息;

分组查询

group by 分组字段;
  • 注意事项
    • where 子句用于限制分组前的数据,having用于分组后的数据过滤。
    • where 子句不允许使用聚合函数。

示例

-- 按用户名分组并计算总数group by 用户名 having count(用户ID) > 5;

分页查询

limit 开始索引, 每页记录数;
  • 注意事项
    • 开始索引 = (当前页码 - 1) × 每页记录数。

示例

-- 获取前10条记录limit 0, 10;-- 获取第5页的记录(每页10条)limit (5-1)*10, 10;

其他注意事项

  • 表命名和字段命名:使用易于理解的命名习惯,避免使用过于技术化的名称。
  • 数据库连接:确保连接状态正常,避免因连接丢失导致错误。
  • 事务处理:合理使用事务操作,确保数据一致性。

  • 感谢您的阅读!如有疑问或建议,欢迎随时反馈!

    转载地址:http://ubse.baihongyu.com/

    你可能感兴趣的文章
    Node中自启动工具supervisor的使用
    查看>>
    Node入门之创建第一个HelloNode
    查看>>
    node全局对象 文件系统
    查看>>
    Node出错导致运行崩溃的解决方案
    查看>>
    Node响应中文时解决乱码问题
    查看>>
    node基础(二)_模块以及处理乱码问题
    查看>>
    node安装卸载linux,Linux运维知识之linux 卸载安装node npm
    查看>>
    node安装及配置之windows版
    查看>>
    Node实现小爬虫
    查看>>
    Node提示:error code Z_BUF_ERROR,error error -5,error zlib:unexpected end of file
    查看>>
    Node提示:npm does not support Node.js v12.16.3
    查看>>
    Node搭建静态资源服务器时后缀名与响应头映射关系的Json文件
    查看>>
    Node服务在断开SSH后停止运行解决方案(创建守护进程)
    查看>>
    node模块化
    查看>>
    node模块的本质
    查看>>
    node环境下使用import引入外部文件出错
    查看>>
    node环境:Error listen EADDRINUSE :::3000
    查看>>
    Node的Web应用框架Express的简介与搭建HelloWorld
    查看>>
    Node第一天
    查看>>
    node编译程序内存溢出
    查看>>