SQL主体内容一致,但是对于不同的数据库,对于SQL就可能有一些细节的拓展

简介: SQL主体内容一致,但是对于不同的数据库,对于SQL就可能有一些细节的拓展

20231108

SQL主体内容一致,但是对于不同的数据库,对于SQL就可能有一些细节的拓展

插入数据

insert into 表名 values(值,值......);

查询(SQL中最复杂的)

1.全列查询

   select * from 表名

2.指定列查询

   select 列名,列名 from 表名

3.查询带有表达式

   针对查询的结果进行计算

   运算过程都是不影响服务器硬盘上的原始数据的

4.查询的时候带上别名

   select 表达式 as 别名 from 表名

5.查询的时候进行去重

   select distinct 列名 from 表名  

6.排序

   select 列名 from 表名 order by 列名(asc ,desc )

写到前面的列优先级高,后面的列优先级低

7.条件查询

   select 列名  from 表名 where 条件;

与或非 and or

一个where中有and也有or会先执行and 后执行or

在写代码的时候一定要记得多加优先级的()

select * from result where chinese between 80 and 90(闭区间)

in操作(查询在集合之间的元素是否存在)

select * from result where math in(58,59);


模糊查询 (like 关键字)

会用到通配符

%:匹配任意个字符

_:匹配一个字符

select * from result where name like '孙%';(匹配以孙开头的数据)

like %孙就是以孙结尾的

%like%就是包含孙的

_是固定只能匹配到一个任意字符

但是可以有多个_ 比如 __孙

_给的模糊查询方式是比较简单的

但是各种编程语言中,还有一种模糊匹配的方式 "正则表达式"

--在实际的开发中,有的时候需要进行一些字符串校验,我们就可以使用正则表达式

查询空值(sql是大小写不敏感的)

select * from exam_result where id is null;

不要写成 id = null 这样是查不到的 但是可以使用 id <=> null

条件不仅仅能搭配查询语句,修改和删除也仍然适用

分页查询

select * 比较危险 一次查询出来的内容太多了

分页查询时最合适能解决上述问题的方案

可以限制这一次查询最多能查多少个记录

很多的网站,都是有分页的功能的

每一页就只显示有限的数据

limit 来限制这次请求返回多少个记录(限制一页里有几条记录)

select * from 表名 limit 3;

返回前三条数据

还可以使用offset来描述当前的结果从第几条开始获取

不写就是默认从第0条开始获取

select * from 表名 limit 3 offset 0

select * from 表名 limit 3 offset 3

select * from 表名 limit 3 offset 6

select * from 表名 limit 3 offset 9

类似于翻页功能

上面的这些查询都是最基础的查询(日常工作涉及到的内容,绝大部分都是最基础的)

修改

虽然如此,但是修改本身还是挺难的~~

update 表名 set 列名 = 值 where 条件; (set也是计算机中的常用术语)

孙悟空数学改成80

update exam_result set math = 80 where name = "孙悟空";

一个语句,同时修改两个列

update exam_result set math = 60,chinese = 70 where name = "曹孟德";

将总成绩倒数前3的数学成绩加上30分

对于update 也可以使用 order by 和 limit 使用

排序的时候会将空值当成最小的了

不要写成math += 30 sql不支持这种语法

一个sql语句就是第一个整体,要么全部成功,要是失败,就全部不执行

update 如果没有限制条件,就对 所有行都进行修改

(危险的操作)

在恢复的过程中,数据库是无法给外界提供服务的


delete 语句

delete from 表名 where 条件 /order by/limit;

把条件匹配出来的符合要求的记录,给删除掉

不写就是删除所有记录.

相关文章
|
9月前
|
SQL 机器学习/深度学习 人工智能
从“写SQL”到“聊数据”:NL2SQL如何用自然语言解锁数据库?
本文系统性地阐述了自然语言转SQL(NL2SQL) 技术如何让非技术背景的业务分析师实现数据自助查询,从而提升数据驱动决策的效率与准确性。
从“写SQL”到“聊数据”:NL2SQL如何用自然语言解锁数据库?
|
8月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
1428 152
|
8月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
1041 156
|
11月前
|
SQL 关系型数据库 MySQL
Go语言数据库编程:使用 `database/sql` 与 MySQL/PostgreSQL
Go语言通过`database/sql`标准库提供统一数据库操作接口,支持MySQL、PostgreSQL等多种数据库。本文介绍了驱动安装、连接数据库、基本增删改查操作、预处理语句、事务处理及错误管理等内容,涵盖实际开发中常用的技巧与注意事项,适合快速掌握Go语言数据库编程基础。
1400 213
|
8月前
|
SQL 人工智能 Linux
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
716 5
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
|
7月前
|
SQL 存储 监控
SQL日志优化策略:提升数据库日志记录效率
通过以上方法结合起来运行调整方案, 可以显著地提升SQL环境下面向各种搜索引擎服务平台所需要满足标准条件下之数据库登记作业流程综合表现; 同时还能确保系统稳健运行并满越用户体验预期目标.
404 6
|
8月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
8月前
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
590 8
|
9月前
|
SQL 人工智能 Java
用 LangChain4j+Ollama 打造 Text-to-SQL AI Agent,数据库想问就问
本文介绍了如何利用AI技术简化SQL查询操作,让不懂技术的用户也能轻松从数据库中获取信息。通过本地部署PostgreSQL数据库和Ollama模型,结合Java代码,实现将自然语言问题自动转换为SQL查询,并将结果以易懂的方式呈现。整个流程简单直观,适合初学者动手实践,同时也展示了AI在数据查询中的潜力与局限。
1265 8
|
9月前
|
SQL 人工智能 Linux
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
420 5